随着自主水下航行器(AUV)技术的发展和应用场景的不断扩大,人们对AUV的自主性和稳定性提出了更高要求。路径规划为智能水下机器人技术的主要研究方向和研究热点之一,同时是AUV实现自主决策的重要前提条件,贯穿AUV水下作业的全过程。在执行航行任务中,利用先验的电子海图信息进行全局路径规划可有效辅助机器人水下航行。当前常用的路径规划算法有人工势场法[1]、A*算法[2-3]、蚁群算法[4-5]、遗传算法、Q学习算法[6]等,近年来随着机器学习技术的快速发展,强化学习算法已成为解决路径规划问题的热门方案。
Q学习算法是路径规划问题中较为常用的强化学习方法,在无人车、无人机、机械臂、无人航行器等领域使用广泛。Q学习算法可为路径规划问题提供良好的解决办法,但在训练过程中,算法根据环境直接给出动作执行的评价而忽略其余动作所含信息,算法存在收敛困难、探索不平衡、参数敏感等问题[7]。在强化学习技术高速发展背景下,针对Q学习算法的改进研究也取得了部分进展,Mnih等[8]使用深度强化学习来实现路径规划的方法,结合Q学习算法与深度神经网络,实现了在Atari游戏中超越人类水平的控制能力。Bonny等[9]使用蜜蜂算法和 Q 学习算法以更少的迭代次数找到最佳路径。Zhu等[10]采用缩小轨迹的规约规则,从而有效减少了冗余的探索空间,同时保证最优的导航路径仍在缩减的空间中。Maoudj等[11]提出一个新的奖励函数来初始化Q表,并向机器人提供环境的先验知识改善计算时间和机器人安全性。Li等[12]在Q学习的探索机制中增加了动态探索因子,以解决无人机在Q学习局部动态路径规划中利用与探索难题。这些研究在一定程度上解决了机器人在线路径规划中的维数灾难和收敛过慢问题,但对硬件计算能力和智能体的机动性有一定要求。为解决水下无人航行器离线全局路径规划问题,本文提出一种轻量级AUV路径规划算法,通过设计距离奖励函数使Q学习算法探索时加快学习效率,引入ε贪婪策略和Softmax策略相结合的机制提供一种平衡探索与利用的方法,同时考虑AUV运动约束简化动作集合的元素数量减少算法复杂度。
1 Q-learning算法理论在Q学习中,智能体与环境进行交互,从当前状态开始,采取不同动作,并观察到下一个状态和获得的奖励。智能体的目标是学习一个策略,使得在每个状态下选择动作时能最大化累积奖励。AUV和环境一次交互过程轨迹所收到的累计奖励为总回报如下:
$ G\left(\tau \right)= \sum _{t=0}^{T-1}{r}_{t+1}=\sum _{t=0}^{T-1}{r}_{t+1}({s}_{t},{a}_{t},{s}_{t+1}) 。$ | (1) |
当目前环境中存在一个以上的终止状态,即达到此状态时交互过程结束,这一轮的交互过程称之为一个回合或实验。如果环境中没有终止状态,其总回报可能为无穷大,所以引入一个折扣率
$ G\left(\tau \right)=\sum _{t=0}^{T-1}{\gamma }^{t}{r}_{t+1} 。$ | (2) |
式中:
$ {Q ({s}_{t},{a}_{t}) \leftarrow {Q}\left({s}_{t},{a}_{t}\right)+\mathrm{\alpha }\left({r}+\mathrm{\gamma }\cdot{\max}_{a'}Q\left({s}_{t+1},{a'}\right)-Q\left({s}_{t},{a}_{t}\right)\right) 。}$ | (3) |
式中:
传统Q学习简单易实现、无模型依赖性,不需要对环境的任何先验知识或模型做出假设,但存在采样效率低、收敛速度慢、参数调整敏感等问题。针对欠驱动AUV路径规划需求,本文提出一种改进Q算法提高算法性能和稳定性。
2.1 奖励函数设计Q学习算法通过最大化奖励值来获得最优策略,针对路径规划复杂的应用环境,选择合理的奖励函数会得到更合理的策略,根据AUV专业知识设计奖惩函数,可提高AUV航向时安全,同时提加快强化学习的探索效率。水中环境复杂,目前大型AUV多数为欠驱动其运动约束明显。为了更有效地将Q学习算法应用于AUV路径规划,本文引入避碰奖惩机制和距离奖惩机制,同时结合启发性思想,加入启发性函数。AUV在当前状态S,在经过选择策略后执行a动作获得的总奖励由避碰奖惩和距离奖惩组成:
$ R=rewar{d}_{1}+rewar{d}_{2}。$ | (4) |
$ reward=\left\{\begin{array}{l}\text{−1,}\quad\ \mathrm{未}\mathrm{发}\mathrm{生}\mathrm{碰}\mathrm{撞},\\ \text{100}\text{\text{,}}\ \mathrm{到}\mathrm{达}\mathrm{终}\mathrm{点},\\ \text{−50}\text{\text{,}}\ \mathrm{发}\mathrm{生}\mathrm{碰}\mathrm{撞}。\end{array}\right. $ | (5) |
固定大小的奖励函数在特定情况下能够满足AUV路径规划的要求,AUV实际应用中不同任务航行距离相差大,使用固定的奖励值会使算法稳定性大幅度下降。在进行短距离任务时,探索步数较短便到达终点,容易陷入局部最优解。在进行长距离航行任务时,由于步数较多,会使到达终点的路线与其他路线累计奖励数值接近,导致算法不收敛。为解决以上问题,本文以任务距离为参数来设计奖励函数能提高算法适用范围和稳定性,选用奖励函数如下:
$ {reward}_{1}=\left\{\begin{array}{l}\text{−1}\text{,} \mathrm{未}\mathrm{发}\mathrm{生}\mathrm{碰}\mathrm{撞},\\ \lambda \sqrt{({x}_{{s}_{t}}-X)({y}_{{s}_{t}}-Y)}\text{,}\mathrm{到}\mathrm{达}\mathrm{终}\mathrm{点},\\ -\beta \text{,} \mathrm{发}\mathrm{生}\mathrm{碰}\mathrm{撞}。\end{array}\right. $ | (6) |
式中:
$ {{reward}_{2} = \varphi \frac{( \sqrt{({x}_{{s}_{t}} - X{)}^{2} + ({y}_{{s}_{t}} - Y{)}^{2}} - \sqrt{({x}_{{s}_{\text{t+1}}} - X{)}^{2} + ({y}_{{s}_{\text{t+1}}} - Y{)}^{2}})}{D} 。}$ | (7) |
式中:
在AUV学习过程中,合理地处理利用与探索的决策可显著提高算法性能。探索和利用代表了在选择动作时的2种不同策略,在不同阶段的学习中发挥着重要作用。参数初始化完成后,算法训练不足,需通过不断的探索来获取更多的环境信息。AUV随机选择动作,能更好地探索环境,并避免陷入局部最优解。此时的探索过程有助于建立对环境的模型和获取更多的奖励信息。当算法深入了解当下环境时,AUV应更加倾向于最优秀的信息来做出决策,选择更有效的动作,以最大化累积奖励。传统ε−贪婪策略通过设置一个小的ε值,智能体在能够利用已有信息的基础上进行一定程度的探索。近年来的研究[13]表明若采用传统ε−贪婪值策略其误差会随着学习次数呈线性增长,为了能使算法在学习的过程中逐渐依赖于利用,更好地利用已有知识提高算法的训练效率。本文提出一种结合ε−贪婪策略和Softmax策略的选择机制。时变ε探索因子兼顾算法学习过程中的探索与利用,在初期尽可能多的进行“探索”,以求准确估计,在后期尽可能多的“利用”,以求最大化平均回报。贪婪策略从环境中直接给出最优动作执行,而忽略其余动作所含信息,容易使算法丢失最优解。Softmax策略用于从多个选择中进行概率性的随机选择,概率与选择的价值相关。Softmax策略对每个选择的价值进行归一化处理,根据归一化后的价值分布,按照概率进行随机选择,保留了所有动作所含的价值信息。
$ {a}_{\mathrm{S}\mathrm{o}\mathrm{f}\mathrm{t}\mathrm{m}\mathrm{a}\mathrm{x}}\to {p}_{\mathrm{S}\mathrm{o}\mathrm{f}\mathrm{t}\mathrm{m}\mathrm{a}\mathrm{x}}\left({a}_{i}\right)=\frac{{e}^{ \frac{Q\left({a}_{i}\right)}{\tau }}}{\displaystyle {\sum }_{k=j}^{k}{e}^{ \frac{Q\left({a}_{j}\right)}{\tau }}}。$ | (8) |
式中:
$ \mathit{\varepsilon} =\mathit{\varepsilon} /(1+{e}^{-\frac{N}{n}}) 。$ | (9) |
式中:
改进Q学习算法使用的策略机制,首先生成一个小于1的随机正数p,若p<1−
$ p\left({a}_{i}\right)=\left\{\begin{array}{l}{\rm{arg}\rm{max}}_{a\in A}{Q}_{t}\left(a\right),\; p > \mathit{\varepsilon},\\ {a}_{\rm Softmax},\; p < \mathit{\varepsilon} 。\end{array}\right. $ | (10) |
AUV相比较陆地机器人和无人机其机动性较差,在动作集合上使用减枝策略,可使Q学习算法得出的路径更加平滑。通过当前状态
AUV的所处环境为海洋,航行时海洋中的障碍物多为岛屿,使用如图2中的栅格法设置障碍物。设置栅格方法操作简单,要求计算量低,为AUV与障碍物之间的距离增加余量,保证了AUV航行安全。
AUV执行短距离任务时,通常环境为距离海岸线不远的位置,珊瑚、岛屿浅水区均可视为障碍物,分布相对密集且零散,在AUV长距离航行任务,所处环境通常为深水海洋岛屿分布离散无规律。对2种不同的情况进行对比仿真验证,模拟不同使用环境,同时验证算法的适用范围,改进Q学习算法的参数设置如表1所示。
选择24×24的仿真环境,模拟AUV执行短距离任务所处的复杂环境,对其进行仿真实验对比改进算法与传统Q学习算法的收敛速度和最优路径。传统Q学习算法选用ε贪婪算法,奖励函数选择式(5)。其仿真结果如图3~图4所示。
图3表明在复杂环境下改进算法减少路径长度7.85%,减少转向次数14.29%,避免陷入局部最优解。通常研究使用奖励值来评估强化学习算法的性能,是因为强化学习算法的核心是通过智能体与环境的交互,不断获取奖励或惩罚来训练其行为策略。图4表明,改进后的Q学习算法可更快获得奖励值,其迭代300次左右即可使AUV获得收敛路径,而传统算法需迭代近
选择50×50的仿真环境,模拟AUV执行长距离任务所处环境,改进Q学习算法所用的参数如表1所示,传统Q学习算法在使用式(5)的固定奖励值进行仿真时无法收敛,将(5)中到达目标点的奖励值更改为250,与当前环境下式(6)到达终点奖励值相同,进行仿真实验,其结果如图5所示。
仿真结果表明,改进算法具有更高的适用范围,有效果缓解了传统Q学习算法的参数敏感性问题,同时改进Q学习算法最终收敛的最优路径长度减少6.10%,转向次数减32.14%。如图6(b)改进Q学习算法在学习约
针对传统Q学习算法存在的问题,本文以欠驱动AUV为对象,提出一种变参数的Q学习路径规划算法。在传统Q学习算法基础上设计避碰奖惩和距离奖惩函,优化动作集合,提高算法收敛速度、降低参数敏感性、扩大适用范围。同时引入时变贪婪策略和Softmax策略结合的机制,平衡利用与探索,使Q学习算法避免局部最优解。仿真对比实验表明:1)改进算法可在离线电子海图中为AUV提供无碰撞的路径,路径曲折及长度对比传统算法有明显提升;2)相比于传统Q学习算法解决路径规划问题,改进Q学习算法适用范围更广,具有更快的收敛速度和更好的鲁棒性。
[1] |
KHATIB O. Real-time obstacle avoidance for manipulators and mobile robots[J]. The International Journal of Robotics Research, 1986, 5(1): 90-98. DOI:10.1177/027836498600500106 |
[2] |
任晔, 王俊雄, 张小卿. 基于多因素改进A*算法的AUV路径规划研究[J]. 舰船科学技术, 2022, 44(11): 58−62. REN Y, WANG J X, ZHANG X Q. Research on AUV path planning based on multi-factor impoved A* algorithm[J]. Ship Science and Technology, 2022, 44(11): 58−62. |
[3] |
GURUJI A K, AGARWAL H, PARSEDIYA D K. Time-efficient A* algorithm for robot path planning[J]. Procedia Technology, 2016, 23: 144-149. DOI:10.1016/j.protcy.2016.03.010 |
[4] |
DORIGO M. The ant system: an autocatalytic optimizing process[C]//Proceedings of the First European Conference on Artificial Life, Paris, France, 1991.
|
[5] |
MIRJALILI S, SONG DONG J, LEWIS A. Ant colony optimizer: theory, literature review, and application in AUV path planning[J]. Nature-Inspired Optimizers: Theories, Literature Reviews and Applications, 2020, 811: 7−21 .
|
[6] |
WATKINS C J C H, DAYAN P. Q-Learning[J]. Machine learning, 1992, 8: 279-292. |
[7] |
LOW E S, ONG P, CHEAH K C. Solving the optimal path planning of a mobile robot using improved Q-learning[J]Robotics and Autonomous Systems, 2019, 115: 143−161.
|
[8] |
MNIH V, KAVUKCUOGLU K, SILVER D, et al. Human-level control through deep reinforcement learning[J]. Nature, 2015, 518(7540): 529-533. DOI:10.1038/nature14236 |
[9] |
BONNY T, KASHKASH M. Highly optimized Q‐learning‐based bees approach for mobile robot path planning in static and dynamic environments[J]. Journal of Field Robotics, 2022, 39(4): 317-334. DOI:10.1002/rob.22052 |
[10] |
ZHU Y, WANG Z, CHEN C, et al. Rule-based reinforcement learning for efficient robot navigation with space reduction[J]. IEEE/ASME Transactions on Mechatronics, 2021, 27(2): 846-857. |
[11] |
MAOUDJ A, HENTOUT A. Optimal path planning approach based on Q-learning algorithm for mobile robots[J]. Applied Soft Computing, 2020, 97: 46−61. DOI:10.1016/j.asoc.2020.106796 |
[12] |
LI D, YIN W, WONG W E, et al. Quality-oriented hybrid path planning based on a* and q-learning for unmanned aerial vehicle[J]. IEEE Access, 2021, 10: 7664-7674. |
[13] |
AUER P, CESA-BIANCHI N, FISCHER P. Finite-time analysis of the multiarmed bandit problem[J]. Machine Learning, 2002, 47: 235-256. DOI:10.1023/A:1013689704352 |