具体内容:
传统的移动机器人导航方法:
现有 DRL 导航方法的研究:
基于 DRL 的分层导航方法:
学者 | 工作 | 效果 | 引用 |
---|---|---|---|
Zhang 等 | 基于动作优势加权的策略融合方法 | 避障和目标接近两种低层行为策略均通过独立训练 DRL 获得,通过人为设计的规则对低层策略的动作优势值进行加权, 得到用于导航的控制动作. | Zhang W, Zhang Y, Liu N. Danger-aware adaptive composition of DRL agents for self-navigation[J]. Unmanned Systems, 2020, 9(1): 1-9. |
Ding 等 | 用于多机器人导航任务的分层控制方法 | 利用 DRL 和简单规则分别得到避障策略和目标接近策略, 并对相应的控制动作进行加权输出;能够降低策略学习的难度,但是其高层策略始终依赖人为设计的调控规则。 | Ding W, Li S, Qian H, et al. Hierarchical reinforcement learning framework towards multi-agent navigation[C]. In: Proceedings of the IEEE International Conference on Robotics and Biomimetics. Kuala Lumpur: IEEE, 2018: 237-242. |
分层深度强化学习:
类型 | subgoal-based | option-based |
---|---|---|
特点 | 高层策略负责生成子目标, 再由低层策略输出控制动作进行实现 | 高层策略负责在多个低层策略中进行选择, 再由被选择的低层策略输出控制动作 |
例子 | 用于实现移动机械臂复杂控制的 HDRL 方法 | 实现六足机器人移动控制 |
主要内容 | 高层策略用于输出移动底盘或机械臂的子目标姿态, 而低层策略负责控制移动机械臂到达相应的子目标姿态, 使其实现移动或开门操作 | 低层策略负责控制机器人关节完成前进、转向等基础运动;高层策略负责规划低层策略的执行顺序, 从而引导机器人到达目标位置. |
期刊引用 | Li C, Xia F, Martín-Martín R, et al. Hrl4in: hierarchical reinforcement learning for interactive navigation with mobile manipulators[C]. In: Proceedings of the Conference on Robot Learning. Virtual Event: PMLR, 2020: 603-616. | Li T, Lambert N, Calandra R, et al. Learning generalizable locomotion skills with hierarchical reinforcement learning[C]. In: Proceedings of the IEEE International Conference on Robotics and Automation. Paris: IEEE, 2020: 413-419. |
缺点 | 依赖先验知识设计具有任务特异性的子目标空间 | 仅考虑在无障碍物的简单环境中对机器人进行移动控制 |
本文主要工作叙述:
高层的行为选择模型采用全连接神经网络;
低层的避障控制模型也采用类似的全连接神经网络, 负责学习避障策略;
低层的目标驱动控制模型则采用基于规则的控制器, 负责实现目标接近策略.
采用竞争双深度 Q 网络 (dueling double deep Q-network,D3QN)实现避障控制模型
刘建伟, 高峰, 罗雄麟. 基于值函数和策略梯度的深度强化学习综述 [J]. 计算机学报, 2019, 42(6): 1406-1438.
Q ( s t , a t ; θ ) = Q ( s t , a t ; θ ) + α ( y t − Q ( s t , a t ; θ ) ) y t = r t + γ Q ^ ( s t + 1 , arg max a ∈ A l Q ( s t + 1 , a ; θ ) ; θ − ) Q(s_{t},a_{t};\theta) = Q(s_{t},a_{t};\theta) + \alpha(y_{t} - Q(s_{t},a_{t};\theta)) \\ y_{t} = r_{t}+\gamma \hat{Q} (s_{t+1}, \argmax_{a \in A_{l}} Q (s_{t+1}, a; \theta) ; \theta^{-}) Q(st,at;θ)=Q(st,at;θ)+α(yt−Q(st,at;θ))yt=rt+γQ^(st+1,a∈AlargmaxQ(st+1,a;θ);θ−)
奖励函数设置如下:
r t l = v t + ( r c ) t ( r c ) t = { r c o l l i s i o n D t < R r o b o t − λ c D t D t ≥ R r o b o t r_{t}^{l} = v_{t}+(r^{c})_{t} \\ (r^{c})_{t} = \begin{cases} r_{collision} &D_{t}
D t → D_{t} \rightarrow Dt→ 移动机器人当前时刻与障碍之间的最小距离;
R r o b o t → R_{robot} \rightarrow Rrobot→ 移动机器人底盘半径;
r c o l l i s i o n → r_{collision} \rightarrow rcollision→ 预定义参数;
项目 | 内容 |
---|---|
状态 | 激光雷达扫描数据外 + 目标点的相对坐标 + 移动机器人的线速度与角速度 |
动作 | 2 种离散动作,分别对应于避障和目标接近两种行为,动作价值较大的动作用于激活相应的行为策略 |
模型 | D3QN |
行为选择模型的决策间隔在选择目标接近行为时设为 1 个时间步 (time step), 而在选择避障行为时设为 n n n( n n n >1) 个时间步, 从而有利于缩短决策链长度, 降低策略学习的难度。
y t = ∑ τ = 0 k − 1 γ τ r t + τ h + γ k Q ^ ( s t + k h , arg max a ∈ A h Q ( s t + k h , a ; θ ) ; θ − ) y_{t} = \sum\limits_{\tau=0}^{k-1}\gamma^{\tau}r_{t+\tau}^{h}+\gamma^{k}\hat{Q}(s_{t+k}^{h},\argmax_{a \in A_{h}}Q(s_{t+k}^{h},a;\theta);\theta^{-}) yt=τ=0∑k−1γτrt+τh+γkQ^(st+kh,a∈AhargmaxQ(st+kh,a;θ);θ−)
s t + k h s^{h}_{t+k} st+kh 和 a t + k h → a^{h}_{t+k} \rightarrow at+kh→ 下一次决策时的输入状态和输出动作;
r t + T h → r^{h}_{t+T} \rightarrow rt+Th→为时刻 t + T t + T t+T的即时奖励;
奖励函数设置如下:
r t h = ( r d ) t + ( r o ) t + ( r s ) t ( r d ) t = λ t ( d t − 1 − d t ) ( r o ) t = { λ o ( D t − D o ) , D t ≤ D t h r e s r o b s t a c l e , D t > D t h r e s ( r s ) t = { 20 , 到达目标点; − 20 , 发生碰撞则受到惩罚; r^{h}_{t} = (r^{d})_{t}+ (r^{o})_{t} + (r^{s})_{t} \\ (r^{d})_{t} = \lambda^{t}(d_{t-1}-d_{t}) \\ (r^{o})_{t} = \begin{cases} \lambda^{o}(D_{t}-D^{o}),&D_{t} \le D_{thres} \\ r_{obstacle},&D_{t} \gt D_{thres} \end{cases} \\ (r^{s})_{t} = \begin{cases} 20,到达目标点;\\ -20,发生碰撞则受到惩罚; \end{cases} rth=(rd)t+(ro)t+(rs)t(rd)t=λt(dt−1−dt)(ro)t={λo(Dt−Do),robstacle,Dt≤DthresDt>Dthres(rs)t={20,到达目标点;−20,发生碰撞则受到惩罚;
传统避障方法:
通过该训练方法学习到的避障策略虽然能够使机器人成功躲避障碍, 但易出现局部极小问题
算法1~参数更新:
算法2~环境交互
对比模型:
模型 | 内容 |
---|---|
D3QN 方法 | 使用 D3QN 直接学习导航策略 |
DAAC(danger-aware adaptive composition) 方法 | 基于动作优势加权的分层导航方法 |
HDRL 方法 | 本文提出的 option-based HDRL 模型框架, 但在训练过程中不利用接近行为的经验数据对避障策略进行优化. |
D3QN 方法进行导航时出现局部极小问题,导致移动机器人无法走出凹形区域;