动态窗口法引导的TD3无地图导航算法
TD3 mapless navigation algorithm guided by dynamic window approach
通讯作者:
收稿日期: 2024-05-24
基金资助: |
|
Received: 2024-05-24
Fund supported: | 国家自然科学基金资助项目(62073164);上海市航天科技创新基金资助项目(SAST2022-013). |
作者简介 About authors
柳佳乐(1999—),男,硕士生,从事智能体导航决策的研究.orcid.org/0009-0007-7253-5601.E-mail:
针对深度强化学习(DRL)算法训练数据需求量大、连续导航信息利用不充分的问题,提出DWA-LSTM TD3算法. 该算法根据目标点相对位置、机器人自身速度和当前激光雷达数据控制机器人运动,过程无需先验地图. 在训练过程中,利用动态窗口法(DWA)引导双延迟确定策略梯度(TD3),提高训练数据的质量. 在策略网络中引入长短期记忆神经网络(LSTM),提升智能体对连续导航信息的处理能力. 搭建仿真环境训练测试,与其他方法进行对比. 实验结果表明,DWA-LSTM TD3在相同的训练步数下能够获得更高的奖励值,提高了导航任务的成功率;导航姿态角的波动范围变化更小,轨迹更平滑,改善机器人的运动安全性能. 利用该算法,能够在不同场景下高效完成导航任务. 该算法具有很强的泛化能力.
关键词:
The DWA-LSTM TD3 algorithm was proposed in order to address the challenges of high data demand in deep reinforcement learning (DRL) and insufficient utilization of continuous navigation information. Robot motion was controlled based on the relative position of the target point, the robot’s own velocity, and current LiDAR data, without relying on any prior map. The dynamic window approach (DWA) was employed to guide the twin delayed deep deterministic policy gradient (TD3) algorithm during training, thereby enhancing the quality of collected training data. A long short-term memory (LSTM) neural network was integrated into the policy network in order to improve the agent’s ability to process continuous navigation information. A simulation environment was constructed for training and evaluation, and comparative experiments were conducted with other methods. The experimental results show that the DWA-LSTM TD3 algorithm achieves higher cumulative rewards and improves the success rate of navigation tasks under the same number of training steps. The fluctuation range of navigation orientation angles was reduced, smoother trajectories were produced, and the safety performance of robot motion was enhanced. The algorithm can be used to efficiently accomplish across various scenarios. The algorithm has strong generalization ability.
Keywords:
本文引用格式
柳佳乐, 薛雅丽, 崔闪, 洪君.
LIU Jiale, XUE Yali, CUI Shan, HONG Jun.
伴随深度强化学习的飞速发展,深度强化学习在无地图导航领域逐渐成为主流,然而深度强化学习方法需要进行大量的训练,该过程需要有足够多的优质数据才能训练出令人满意的模型[19]. 在无地图场景下导航无法获取最优的全局路径,仅依靠局部路径规划器无法实现高效导航[20]. 为了解决这些问题,结合神经网络的快速响应性和强鲁棒性[21],本文构建基于动态窗口法引导的TD3路径规划算法框架. 为了提升DWA局部路径规划算法在无地图环境下的表现,设计逃离机制,解决路径规划器易陷入局部最优的问题. 为了解决TD3算法训练速度慢、所需训练样本量大的问题,结合TD3算法与DWA,辅助TD3算法获得奖励更高的经验动作,以获得优质训练样本,加快算法的收敛进程. 引入LSTM网络,增强机器人对连续信息经验的学习能力,参考前序状态信息,进一步提升算法的训练效率,提高机器人的导航效果.
1. 数学建模与动态窗口法
1.1. 数学建模
图 1
图1中,
式中:
1.2. 动态窗口法
动态窗口法具有决策延迟低、安全性高、多约束耦合能力强等优点,是高效且可靠的导航方法,因此将其与深度强化学习进行结合,提升导航性能. 动态窗口法需要在速度空间内对
式中:
在实际工程上,机器人加速、减速运动都会受限于机器人的动力性能,因此机器人速度空间被加速度所约束,数学表达式如下:
式中:
机器人通过激光雷达可以获得与障碍物之间的距离,应留有一定的距离确保机器人能够在撞到障碍物前完成减速. 若距离不够,则机器人以最大加速度进行制动,无法避免碰撞. 对机器人在发生碰撞前的速度进行约束,该速度应与障碍物距离成正比,数学表达式如下:
式中:
2. 算法设计
2.1. 逃离机制的动态窗口法
由于DWA作为局部路径规划算法,在无先验地图的情况下极易陷入局部最优. 针对该问题,在原始评级函数的基础上设计逃离机制. 评价函数的原理是在符合各种约束的速度空间中采样多组速度,模拟出一定时间内的轨迹[24]. 通过评价函数对这些轨迹进行评价,选出一条相对最优的轨迹和速度,评价函数的数学表达式如下:
式中:
针对无地图环境,采用原始DWA算法导航经常会陷入局部最优,此时机器人评价分数最高的动作可能是原地不动. 虽然原地转动可以确保机器人不会发生碰撞,但机器人不能到达目标位置. 为了解决该问题,针对评价函数作出改进,在陷入局部最优时,采用逃离机制优先逃离局部最优点. 此时,评价函数不考虑
式中:
由于机械结构的限制,机器人背面通常有遮挡,导致观测区域存在盲区,有时需要转动方向寻找更优解. 设计根据机器人左、右侧激光雷达探测数据来确定机器人转向角速度,引导机器人向障碍物不密集的地方转动. 左转与右转概率分别为
式中:
式中:
2.2. 基于DWA引导的TD3算法设计
为了增强算法整体的性能和稳定性,在根据DDPG算法进行优化的TD3算法的基础上进行改进,其改进思路借鉴DDQN算法的思想. 为了解决Q值高估的问题,在TD3网络中采用Actor-Critic框架:4个Critic网络和2个Actor网络. 在该算法中,Critic网络的更新频率高于Actor,这使得训练过程更加稳定. TD3网络的结构如图2所示.
图 2
在TD3算法的训练过程中,网络从经验池中获取当前时刻的状态值、动作值、奖励值和
式中:
通过选取较小的Q并进行回归,可以有效地解决Q值高估的问题. 在训练初期,机器人更需要学习如何躲避障碍物和向目标点方向移动. 在初期,网络获取得到的优质训练数据较少,故采用DWA对机器人进行引导,可以获取更多的优质训练数据,加快网络对导航任务的学习速度.
因机器人在算法训练初期对环境的学习不充分,所执行的动作未必合理,提出基于
式中:
图 3
2.3. 状态空间、动作空间和奖励函数的设计
机器人状态由前方
Actor网络的最终输出可以表示为对应实际机器人的线速度和角速度
奖励函数是深度强化学习的重要机制,智能体根据奖励函数来明确任务需求. 具体内容如下:
式中:
式中:
奖励函数引导机器人在躲避障碍物的同时朝着目标点移动,促使机器人在行驶过程中保持较大的
2.4. 长短期记忆
长短期记忆神经网络是RNN的衍生版本,具有特殊的网络结构,这种结构有利于避免RNN中长期依赖的问题. 在单个LSTM单元中,包括3个门结构,分别为遗忘门、记忆门与输出门. 其中遗忘门能够选择新输入信息
图 4
在无地图导航算法中引入LSTM,以处理机器人的状态信息. 每一时刻LSTM网络输入机器人的当前状态和过往状态信息
图 5
在Actor网络和Critic网络都添加LSTM,对输入状态进行处理. 借助LSTM独特的神经网络结构,可以选择性地遗忘和保留路径规划过程中的历史信息,改善TD3算法对历史信息的理解能力. 具体的网络结构如图6所示.
图 6
3. 实验验证
3.1. 实验环境与超参数的设置
图 7
深度强化学习常需要大量训练数据的支持,基于实际硬件平台直接进行训练,可能会对硬件设备造成无法挽回的损坏. 在Gazebo构建Pioneer P3-DX机器人仿真环境,搭载激光雷达传感器,基于ROS Melodic实现算法设计和仿真验证. 网络训练平台为Ubuntu18.04,程序编写主要通过PyTorch完成. 系统内存为16 GB,处理器为Intel Core i5-12400F,显卡为RTX3060Ti、8 GB显存. 参考现有导航算法[10,12-13]的参数设定,针对DWA-LSTM TD3算法进行参数微调. 根据任务场景的复杂度,将每回合最大时间步调整为500步. 为了保证训练数据充足以降低过拟合风险,将经验池大小设置为
表 1 DWA-LSTM TD3算法的超参数设定
Tab.1
参数 | 数值 |
折扣因子 | 0.99 |
软目标更新率 τ | 0.005 |
每回合最大时间步 MaxStep | 500 |
学习率 LearningRate | 0.001 |
策略噪声 PolicyNoise | 0.2 |
经验池大小 ReplayBuffer |
3.2. 实验结果分析
将提出算法与经典的DDPG、PPO、TD3算法进行比较与消融实验. 在训练场景中,分别对DWA-LSTM TD3、DDPG、PPO、TD3、DWA-TD3、LSTM-TD3进行训练,训练规则如下:在不与障碍物发生碰撞的前提下,500步之内到达终点视为任务完成. 各算法的训练结果如图8所示. 图中,Ni为迭代次数. 在训练初期5 000回合之前,提出方法的学习效率更高,这是DWA算法初期阶段的引导效果. 通过初期引导可以更早地获得优质训练数据,机器人的学习速率更高. 通过LSTM网络提高智能体对导航序列信息的理解能力,所以在训练后期,提出方法具有更高的奖励值.
图 8
利用DWA引导的TD3算法,在训练初期可以获得较高的奖励,给智能体提供更加优质的经验数据,提高算法的收敛速度. 采用融合LSTM后的TD3算法,能够进一步提升奖励值,提高对经验数据的利用效率. 结合两者的优势,能够获得更加优异的效果,提升了算法的收敛速度和最终性能. 使用训练场景中获得的模型,在测试环境中进行性能实验,验证算法的性能表现与泛化能力. 在2个测试环境中各执行100回合,统计每个算法的成功率、每回合步数及每一步的平均奖励. 机器人在100步以内从起点无碰撞到达目标点即为任务成功,统计数据的结果如表2所示.
表 2 训练所得模型的平均奖励值
Tab.2
方法 | 成功率 | 步数 | 奖励 |
PPO | 0.76 | 44.29 | 31.92 |
DDPG | 0.87 | 43.88 | 67.33 |
TD3 | 0.90 | 52.27 | 55.71 |
DWA-TD3 | 0.87 | 35.93 | 63.96 |
LSTM-TD3 | 0.91 | 44.75 | 60.07 |
DWA-LSTM TD3 | 0.91 | 36.89 | 70.19 |
实验数据表明,与PPO算法相比,DDPG算法具有更高的成功率和更少的步数,效果更好,说明DDPG对连续的导航任务处理能力更强. 虽然TD3算法的成功率更高,但每回合步数较多,导致最终的平均奖励没有DDPG平均奖励高,说明TD3算法中引入的双Q网络的导航效率没有明显的提升,但算法的复杂度增大,导致性能衰退. 利用LSTM-TD3获得较高的成功率,但所耗费的步数多,导致获得的奖励不高,可见LSTM虽然带来了更大的网络复杂度,但对算法性能有较大的改善. DWA-TD3经过DWA的前期引导,获取优质的训练数据,所以完成任务的平均步数最少,但成功率稍低. 综合来看,DWA-LSTM TD3在成功率和步数上都比其他算法更加均衡、可靠,在本次实验中获得的平均奖励最高,可见DWA与LSTM的结合极大地提升了TD3算法的性能. 为了使实验结果更加清晰直观,在Gazebo仿真环境中搭建可视化模型,将机器人路径实时投影到地图中.
3.3. 测试场景1的结果分析
在测试场景1中,利用4种算法,均实现了从起点到终点的路径规划. 在无先验地图的环境下,利用DDPG算法,绕到右侧,虽然成功到达,但路线过于复杂. PPO算法和TD3算法的路径不够平滑,转向角波动过大. DWA-TD3与LSTM-TD3的轨迹较TD3更合理,说明DWA和LSTM均对TD3算法具有正向影响. 提出算法相较于其他对比方法有更加平滑、合理的路径,在路径长度方面有一定的优势. 测试场景1的实验可视化结果如图9所示.
图 9
图 9 场景1的实验轨迹可视化结果对比
Fig.9 Comparison of trajectory visualization in scenario 1
上述轨迹中的具体数据如表3所示. 可以看出,DDPG与PPO方法在该场景下的耗费步数较多,DWA-TD3算法较原始TD3算法获得了平均速度的提升,虽然所得的路径不够高效,但由于DWA引导的作用,平均速度大,步数耗费最少. LSTM-TD3算法的步数耗费较多,但经过LSTM对导航信息处理能力的增强,可以看出,利用LSTM-TD3算法获得的轨迹更平滑. DWA-LSTM TD3算法在步数与平均速度上均具有不错的效果,可见两者同时与TD3结合能够为TD3算法带来更大的提升,以更加高效的方式完成导航任务.
表 3 场景1实验所用的时间步
Tab.3
方法 | 步数 | 平均速度 |
DDPG | 134 | 0.389 |
PPO | 130 | 0.479 |
TD3 | 71 | 0.667 |
DWA-TD3 | 64 | 0.708 |
LSTM-TD3 | 76 | 0.596 |
DWA-LSTM TD3 | 68 | 0.673 |
3.4. 测试场景2的结果分析
测试场景1全部由离散障碍物组成. 在测试场景2中增添大型的连续障碍物,利用同样的方法进行分析实验. 由可视化结果可以看出,提出方法具有更加平滑、有效的路径. 从2种不同环境中的测试结果可知,算法具有可泛化性,在不同环境中均具有优秀的表现.
表 4 场景2的实验所用时间步
Tab.4
方法 | 步数 | 平均速度 |
DDPG | 97 | 0.731 |
PPO | 195 | 0.345 |
TD3 | 96 | 0.617 |
DWA-TD3 | 63 | 0.614 |
LSTM-TD3 | 79 | 0.491 |
DWA-LSTM TD3 | 65 | 0.596 |
图 10
图 10 场景2的实验轨迹可视化结果对比
Fig.10 Comparison of trajectory visualization in scenario 2
图 11
图 11 场景1的实验角速度数据箱型图对比
Fig.11 Comparison of box plot of angular velocity data in scenario 1
图 12
图 12 场景2的实验角速度数据箱型图对比
Fig.12 Comparison of box plot of angular velocity data in scenario 2
从图12可以看出,在场景2中,利用DWA-LSTM TD3算法得到的角速度为
通过上述实验发现,LSTM、DWA引导模块在与TD3算法融合后皆有增益,两者融合可以获得更稳定、均衡的导航表现. LSTM通过独特的网络结构,提高算法对导航经验数据的利用效率,解决智能算法对训练数据需求大的问题. 导航是连续任务,LSTM的引入提升了网络对导航连续信息的理解能力,帮助智能体充分参考前序信息做出更加合理的导航决策. DWA引导模块从另一个方面帮助算法的训练,当训练模型初期无法获得优质数据时,引导TD3算法模型获得优质经验,从根源上提升了训练效率. 最终两者与TD3算法结合,训练效率与导航效果得到均衡的提升.
4. 结 语
本文提出DWA-LSTM TD3算法,通过构建动作选择器并采用DWA对训练过程进行引导,帮助算法在训练不完全阶段获取更多的优质训练数据,确保一定的探索比例,在提升算法训练效率的同时,保证算法的导航效果. 为了进一步提升对导航连续信息的处理能力,在算法中引入LSTM,构建含有LSTM的Actor和Critic网络,使算法能够充分参考前序导航信息,做出最优的导航决策. 本文构建基于Gazebo的可视化环境,搭建多个场景供训练与实验. 实验结果表明,该算法的导航任务成功率相较于其他主流算法有所提升,得益于DWA和LSTM融合对算法连续信息处理能力的提高. 每次任务所需的平均步数更少,且任务过程中角速度的波动范围明显缩小,说明运动稳定性更好,因此本研究算法在导航任务的安全性与稳定性上皆获得更好的效果,但即使是采用提出的改进TD3算法模型,测试成功率也仅有91%. 在缺失全局地图的情况下,本研究与实现高效导航任务的目标尚有差距,在算法优化、实时性提升、路径规划精度等方面存在改进的空间.
参考文献
Path planning for the mobile robot: a review
[J].DOI:10.3390/sym10100450 [本文引用: 1]
A Review of deep reinforcement learning algorithms for mobile robot path planning
[J].
Deep reinforcement learning based mobile robot navigation: a review
[J].
改进A*与ROA-DWA融合的机器人路径规划
[J].
Improved A* and ROA-DWA fusion for robot path planning
[J].
Mapless navigation based on 2D LIDAR in complex unknown environments
[J].DOI:10.3390/s20205802 [本文引用: 1]
基于路径规划和深度强化学习的机器人避障导航研究
[J].DOI:10.3969/j.issn.1000-386x.2024.01.043 [本文引用: 1]
Research on robot obstacle avoidance navigation based on path planning and deep reinforcement learning
[J].DOI:10.3969/j.issn.1000-386x.2024.01.043 [本文引用: 1]
基于深度Q网络的改进RRT路径规划算法
[J].DOI:10.3969/j.issn.2096-4641.2021.03.003 [本文引用: 1]
Improved RRT path planning algorithm based on deep Q-network
[J].DOI:10.3969/j.issn.2096-4641.2021.03.003 [本文引用: 1]
Autonomous navigation of UAVs in large-scale complex environments: a deep reinforcement learning approach
[J].DOI:10.1109/TVT.2018.2890773 [本文引用: 2]
Goal-driven autonomous exploration through deep reinforcement learning
[J].
B-APFDQN: a UAV path planning algorithm based on deep Q-network and artificial potential field
[J].DOI:10.1109/ACCESS.2023.3273164 [本文引用: 1]
基于APF-LSTM-DDPG算法的移动机器人局部路径规划
[J].
Local path planning for mobile robots based on APF-LSTM-DDPG algorithm
[J].
好奇心蒸馏双Q网络移动机器人路径规划方法
[J].DOI:10.3778/j.issn.1002-8331.2208-0422 [本文引用: 1]
Path planning method for mobile robots using curiosity distilled double Q-network
[J].DOI:10.3778/j.issn.1002-8331.2208-0422 [本文引用: 1]
Inspection robot navigation based on improved TD3 algorithm
[J].DOI:10.3390/s24082525 [本文引用: 1]
基于深度强化学习的无地图移动机器人导航
[J].
Mapless navigation for mobile robots based on deep reinforcement learning
[J].
基于改进人工势场法的无人车路径规划算法
[J].
Path planning algorithm for unmanned vehicles based on improved artificial potential field method
[J].
Autonomous navigation of UAV in multi-obstacle environments based on a deep reinforcement learning approach
[J].
/
〈 |
|
〉 |
