首页 / 一种基于模糊集和深度强化学习的自适应无人艇路径规划方法

一种基于模糊集和深度强化学习的自适应无人艇路径规划方法实质审查 发明

技术领域

[0001] 本发明属于无人艇导航技术领域,具体涉及一种基于模糊集和深度强化学习的自适应无人艇路径规划方法。

相关背景技术

[0002] 无人艇的研究始于20世纪末,在海洋的资源的开发与探索中,无人艇凭借其体积小、高机动性、无人员伤亡等优势,在海洋环境监测、海面搜救、海洋巡逻等领域具有良好的发展空间与前景,迄今为止无人艇技术仍然是重要研究方向。然而由于海面环境的变幻莫测以及航行环境的日渐复杂,提高无人艇的自主航行能力具有重要的现实意义。为了确保无人艇快速、安全的抵达任务点完成预定任务,路径规划是保障无人艇自主智能的关键技术。
[0003] 路径规划是自主智能航行中的决策环节,目的是建立一条从起始点到目标点的最优路径,在满足无人艇花费代价最小的前提下,同时保证路径的安全性。目前,传统的路径规划算法有从图论中求解最短路径的Dijkstra算法扩展而来的A*算法及A*的变体算法以及一些智能优化算法,如:遗传算法、蚁群算法、模拟退火算法、粒子群算法以及算法之间的组合优化算法。然而这些传统算法过于依赖环境模型和全局环境信息,在应用场景上存在很大的局限性。复杂而多变的海洋环境,要求无人艇拥有自主学习的能力。
[0004] 强化学习是机器学习的一个重要领域,强调智能体通过与环境进行交互以取得最大化奖励,其旨在用于解决决策问题,尤其是连续决策问题。无人艇的路径规划问题也可以看作是一种连续决策问题,在不同的状态下做出当前最优的航行动作。目前,深度强化学习是近年来人工智能领域备受关注的方向之一,将深度学习的感知能力和强化学习的决策能力相结合,直接通过高维感知输入来控制智能体的行为。在强化学习中,智能体仅仅通过和环境交互得到的奖励信号衡量其在某一时刻动作的好坏,通过奖励信号的反馈不断优化智能体的决策从而最大化目标的预期收益。因此在深度强化学习中,奖励函数的设计直接影响到模型的训练。
[0005] 路径规划任务中,奖励函数的设计天然会遇到稀疏奖励问题。智能体只有在到达目标点得到正奖励,在到达边界或者与障碍物发生碰撞时得到负奖励,正常航行状态由于会消耗能量,也得到负奖励。智能体在交互中无法得到足够多的正奖励导致学习缓慢甚至无法进行学习。现如今,大部分基于深度强化学习的无人艇路径规划中采用无人艇与目标点的距离取反作为奖励函数,然而这种奖励函数导致算法收敛速度慢,训练周期长,甚至学习到错误的决策。因此需要合理设计奖励函数以获得最优路径决策。如果根据不同时刻的不同状态自适应地给予智能体相应的奖励,再通过奖励信号对网络参数进行优化,则能够提高模型的决策能力,获得最优的路径决策。

具体实施方式

[0039] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0040] 本发明公开了一种基于模糊集和深度强化学习的自适应无人艇路径规划方法,如图1所示,包括:
[0041] S1.生成用于无人艇训练的障碍物环境并记录该障碍物环境信息,包括障碍物的位置和目标点的位置;
[0042] S2.引入模糊逻辑构建无人艇模糊规则,采用隶属度函数描述无人艇与障碍物、目标点的距离以及无人艇的偏航角;
[0043] S3.在无人艇航行的过程中,实时计算无人艇分别相对于障碍物、目标点的距离,以及无人艇的偏航角;
[0044] S4.将步骤S3中实时计算的结果采用无人艇模糊规则进行处理,实时输出位于区间[0,1]的模糊系数;
[0045] 如图5所示,将距离和偏航角输入模糊控制器,首先对输入数据进行模糊化处理,通过步骤S2中无人艇模糊规则设计的规则库和处理模糊数据的数据库形成的推理机对模糊化数据进行解模糊处理,最后输出得到位于区间[0,1]的模糊系数。
[0046] S5.设计无人艇奖励函数,无人艇奖励函数根据模糊系数对无人艇进行自适应奖励;
[0047] S6.基于深度强化学习构建无人艇路径规划模型,根据无人艇在不同状态下的自适应奖励对无人艇路径规划模型进行训练;采用训练好的无人艇路径规划模型自主规划出最优路径。
[0048] 具体地,无人艇模糊规则包括障碍物模糊规则和目标模糊规则,具体为:
[0049] 获取无人艇与障碍物之间的距离、无人艇与目标点之间的距离以及无人艇的偏航角。
[0050] 表1障碍物模糊规则
[0051]
[0052] 障碍物模糊规则如表1所示,采用模糊语言变量将无人艇与障碍物之间的距离大小分为5段,并将距离标准化到[0,20]范围内如图7所示,精确的距离转化为不同范围内的隶属度,将数值模糊化,[0,5]为BVN表示与障碍物的距离非常近,[0,10]为BN表示与障碍物的距离近,[5,15]为BA表示与障碍物的距离适中,[10,20]为BF表示与障碍物的距离远,[15,20]为BVF表示与障碍物的距离非常远;同样采用模糊语言变量将无人艇的偏航角大小分为5段,偏航角在 范围内变化如图6所示, 为NRB表示偏右大角度,为NRS表示偏右小角度, 为Z表示零, 为PLS表示偏左小角度,
为PLB表示偏左大角度;同样采用模糊语言变量将惩罚模糊系数分为5段如图8所示,[0,
0.25]为PVS表示惩罚模糊系数非常小,[0,0.5]为PS表示惩罚模糊系数小,[0.25,0.75]为PM表示惩罚模糊系数中等,[0.5,1]为PB表示惩罚模糊系数大,[0.75,1]为PVB表示惩罚模糊系数非常大。根据人类专家经验构建障碍物模糊规则:当无人艇与障碍物之间的距离越近,且无人艇的偏航角越小时,说明当前无人艇朝向目标点航行的路径上分布有障碍物并且正在靠近障碍物,则输出惩罚模糊系数越大,后面计算得到的惩罚越大;当无人艇与障碍物之间的距离越远,且无人艇的偏航角越大时,说明无人艇虽然在远离障碍物但是偏离了目标点,则输出的惩罚模糊系数减小,此状态下的惩罚较小。
[0053] 表2目标模糊规则
[0054]
[0055] 目标模糊规则如表2所示,采用模糊语言变量将无人艇与目标点之间的距离大小分为5段,并将距离标准化到[0,20]范围内如图9所示,[0,5]为TVN表示与目标点的距离非常近,[0,10]为TN表示与目标点的距离近,[5,15]为TA表示与目标点的距离适中,[10,20]为TF表示与目标点的距离远,[15,20]为TVF表示与目标点的距离非常远;无人艇的偏航角大小分为5段,与障碍物模糊规则的划分方式相同, 为NRB表示偏右大角度,为NRS表示偏右小角度, 为Z表示零, 为PLS表示偏左小角度,为PLB表示偏左大角度;采用模糊语言变量将奖励模糊系数分为5段如图10所示,[0,0.25]为RVS表示奖励模糊系数非常小,[0,0.5]为RS表示奖励模糊系数小,[0.25,0.75]为RM表示奖励模糊系数中等,[0.5,1]为RB表示奖励模糊系数大,[0.75,1]为RVB表示奖励模糊系数非常大。根据人类专家经验构建目标模糊规则:如果无人艇与目标点之间的距离越近,且无人艇的偏航角越小,说明无人艇航向正确并且在靠近目标点,则奖励模糊系数越大,奖励值越大;如果无人艇与目标点之间的距离越远,且无人艇的偏航角越大,说明无人艇在远离目标点,则减小奖励模糊系数,此状态下的奖励较小。
[0056] 根据模糊规则得到关于模糊系数属于不同模糊语言变量的隶属度值,通过面积重心法得到最终输出值。
[0057] 具体地,奖励函数包括正常航行、障碍物规避和到达目标点三个部分,具体表示为:
[0058]
[0059] 在计算正常航行的奖励时,首先判断无人艇的探测范围内是否包含障碍物,如果没有障碍物,则表示无人艇此时处于安全区域,根据正常航行的奖励函数计算:
[0060]
[0061] 其中;ρgoal表示将无人艇和目标点当前时刻的距离、无人艇当前时刻的偏航角大小输入模糊逻辑控制器得到的奖励模糊系数,随着无人艇的移动,无人艇与目标点间的距离随之变化,奖励模糊系数也不同;dgoal表示在当前时刻,无人艇与目标点间的距离,dmax表示无人艇的初始位置与目标点的距离。
[0062] 障碍物规避表示无人艇的探测范围内有障碍物,此时探测范围并不是安全区域,存在无人艇与障碍物相撞的危险,即说明无人艇不在安全区域内,障碍物规避的奖励函数Rc表示为:
[0063]
[0064] 其中,ρobs表示将无人艇和障碍物当前时刻的距离、无人艇的偏航角大小输入模糊逻辑控制器得到的惩罚模糊系数,无人艇在不断移动,在行进过程中无人艇与障碍物间的距离不断变化,奖励模糊系数也不同;rdet表示探测范围的最大半径,dobs表示在当前时刻,无人艇与障碍物间的距离。
[0065] 具体地,基于深度强化学习构建无人艇路径规划模型,根据无人艇在不同状态下的自适应奖励对无人艇路径规划模型进行训练,如图2所示,DQN网络模型通过引入经验回放池机制解决样本相关性问题,通过目标网络和当前网络双网络机制提高算法稳定性。智能体在t时刻与环境进行一次交互获得奖励与t+1时刻的状态,将(st,at,rt,st+1)经验信息存入经验回放池,在经验回放池进行采样经验数据送入目标网络预测目标Q值yt=rt+λmaxaQ(st+1,a;θ)。在DQN模型的双网络机制采用结构相同但是参数不同的网络,当前网络用2
于预测Q估计值,目标网络预测目标Q值,并通过损失函数L(θ)=(yt‑Q(st,at;θ))更新当前网络参数,在经过时间步C之后将当前网络的参数更新至目标网络。
[0066] 在上述实施例中,使用Python的Tkinter模块构建无人艇的仿真训练环境,其中包括无人艇、障碍物、目标位置三个主要部分。本实施例中,无人艇为强化学习中所控制的智能体,无人艇的探测范围是半径为R的135°的扇形区域。随机生成的仿真训练环境中,其障碍物的数量、大小也是随机的;将仿真训练环境信息数据保存,用于之后的模型训练。
[0067] 其中,无人艇的位置信息通过平面直角坐标系形式给出,(xt,yt)为无人艇在t时刻的位置,θt表示t时刻无人艇的航行方向,αt为无人艇在t时刻与目标位置的连线与x轴正方向的夹角,βt为无人艇在t时刻与扫描到的障碍物位置的连线与x轴正方向的夹角,dobs为t时刻无人艇到障碍物的距离,dgoal为t时刻无人艇到目标位置的距离,无人艇的偏航角为Δθ=θt‑αt;若无人艇扫描区域内无障碍物则dobs=R。
[0068] 具体地,基于模糊集和深度强化的自适应无人艇路径规划过程,如图3所示,包括:
[0069] S11.计算t时刻无人艇与扫描范围内的最近障碍物的障碍物距离,无人艇与目标点的距离,以及无人艇的偏航角;
[0070] S12.判断障碍物距离是否小于无人艇探测范围的检测半径R,若是,则执行步骤S13,否则执行步骤S15;
[0071] S13.判断障碍物距离是否小于安全距离,即无人艇一定不会发生碰撞的最小距离,若是,则说明无人艇与障碍物发生碰撞或无人艇超出环境边界,进而对无人艇反馈惩罚;否则执行步骤S14;
[0072] S14.判断目标距离是否小于安全距离,若是,则说明无人艇到达目标位置,进而对无人艇反馈奖励,此轮训练完成;否则说明无人艇此时探测范围内发现障碍物,采用障碍物规避奖励函数计算惩罚,t=t+1,执行步骤S11;
[0073] S15.判断目标距离是否小于安全距离,若是,则说明无人艇到达目标位置,进而对无人艇反馈奖励,此轮训练完成;否则说明无人艇此时处于安全区域内,采用正常航行奖励函数计算奖励,t=t+1,执行步骤S11。
[0074] 传统的奖励函数将无人艇与目标位置的距离取反作为奖励或者根据是否发生碰撞进行惩罚,导致算法收敛速度慢,训练周期长甚至导致训练失败。本发明基于模糊系数构建奖励函数,如图4所示,无人艇感知环境信息,并通过与环境交互获得一系列的历史经验信息,历史信息包括在t时刻的状态信息和决策信息以及执行决策获得的奖励信息,使用基于Q‑learning算法的改进DQN模型对历史经验数据进行训练,最终利用训练模型为无人艇在障碍物环境中规划时间开销小、安全性高的路径。
[0075] 综上所述,本发明的用于海上无人艇的路径规划方法中,实现了无人艇路径规划,可以用于海洋巡逻、水面监测、水面救援等任务,并且路径安全快捷;避免无人艇执行任务中出现碰撞障碍物的情况,保证了无人艇的安全,提高了无人艇执行任务的效率。
[0076] 尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

当前第1页 第1页 第2页 第3页