CN114625151B - 一种基于强化学习的水下机器人避障路径规划方法 - Google Patents

一种基于强化学习的水下机器人避障路径规划方法 Download PDF

Info

Publication number
CN114625151B
CN114625151B CN202210236892.XA CN202210236892A CN114625151B CN 114625151 B CN114625151 B CN 114625151B CN 202210236892 A CN202210236892 A CN 202210236892A CN 114625151 B CN114625151 B CN 114625151B
Authority
CN
China
Prior art keywords
underwater robot
function
action
state
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210236892.XA
Other languages
English (en)
Other versions
CN114625151A (zh
Inventor
覃振权
孔令同
卢炳先
王雷
朱明�
孙伟峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dalian University of Technology
Original Assignee
Dalian University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dalian University of Technology filed Critical Dalian University of Technology
Priority to CN202210236892.XA priority Critical patent/CN114625151B/zh
Publication of CN114625151A publication Critical patent/CN114625151A/zh
Application granted granted Critical
Publication of CN114625151B publication Critical patent/CN114625151B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/04Control of altitude or depth
    • G05D1/06Rate of change of altitude or depth
    • G05D1/0692Rate of change of altitude or depth specially adapted for under-water vehicles

Landscapes

  • Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

一种基于强化学习的水下机器人避障路径规划方法,首先对水下机器人的能耗模型以及动力学模型,水下洋流场景模型进行建模;其次将水下机器人对到达路径点的能耗与时长最小化问题建模为抽象的马尔可夫决策过程;将当前水下机器人的观测信息通过抽象网络转到隐藏层成为隐藏状态,将隐藏状态和想采取的动作通过转移预测网络映射至下一隐藏向量和预测奖励,另外策略网络通过给定的隐藏向量选择采取的动作以及当前局面的总奖励,在这个场景中即为到达目标点。通过水下机器人与环境的不断交互学习环境模型,得到即时奖励改进神经网络。最后将训练好的策略网络部署到水下机器人中。

Description

一种基于强化学习的水下机器人避障路径规划方法
技术领域
本发明设计路径规划技术领域,特别涉及本发明涉及一种基于强化学习的水下机器人避障路径规划方法。
背景技术
近年来,由于水下机器人操作简易实用。可进行远程操作实时执行动作。机动性能好,可操作性强,无人员伤亡风险等。除此之外水下机器人的操作简易,便于实用。水下机器人的路径规划成了一个新的研究热点,可以广泛应用在渔业养殖、船体检修、观光潜水、海矿探测、海洋监测、生物研究、水下导航、水下救援、管道检测等诸多领域。水下机器人可以应用在以下场景:对海洋的传感器节点进行数据采集;对水下移动的目标进行路径跟踪。本文主要针对第二个场景,由于洋流的存在,水下机器人对三维空间中的航向选择决定了水下机器人的路径偏差和能量消耗。在洋流流速较高的环境下这种状况会更加强烈。另外一些环境中存在障碍,除了洋流影响在路径规划时还要考虑对障碍的规避。
在2020年Omer San等人发表的论文《Deep Reinforcement Learning Controllerfor 3D Path-following and Collision Avoidance by Autonomous UnderwaterVehicles》中提出了一个使用最先进的深度强化学习(DRL)技术的解决方案,来开发能够实现这种混合目标的自主代理,而无需对目标或环境有先验知识。该方法证明了DRL在路径跟踪和避免碰撞方面的可行性,但虽然是三维空间中的避障处理,并且文章中只考虑了静态障碍。
在2021年Juan Parras等人发表的论文《Robust Deep Reinforcement Learningfor Underwater Navigation with Unknown Disturbances》中提出了一个鲁棒的近端策略优化代理,基本思是使用一个额外的虚构智能体表示自然,代表水下机器人的智能体和自然的智能体有相反的目标,将模型转化成了零和博弈的数学模型。虽然这种方法在面对未知干扰时表现出了出色的性能,但是文章环境是基于二维空间,并没有考虑在三维空间下对障碍的规避处理。此外没有考虑到对于三维洋流的分层洋流变化。
发明内容
本发明的目的是基于强化学习的水下机器人路径规划技术主要有如下缺陷:(1)没有考虑洋流在深度不同时的洋流分层情况下的洋流方向偏差。(2)没有考虑洋流流速较高下水下机器人对洋流的使用能力。(3)在规避障碍时除了三维空间的静态障碍也存在类如鱼群和鲸鱼等体积较大的动态障碍,这些障碍同样需要注意。
本发明的技术方案:
一种基于强化学习的水下机器人避障路径规划方法,步骤如下:
(1)建立水下环境模型,包括以下4个步骤:
(1.1)建立场景模型:建立一个边长为L的正方形目标区域,该区域中有n3个长度为l的正方形子空间,每个子空间拥有一个洋流速度为k倍于水下机器人最大速度的洋流;时间被划分为T个相同的时隙,从上一时隙到当前时隙移动时,水下机器人由于进行移动时受洋流流速影响较大,因此要不断根据洋流方向和障碍做出路径选择的决策,并使能耗最小化;其中vm为水下机器人的实际速度,vc为水平方向洋流速度,vs为水下机器人水平方向的最大速度;
vm=vc+vs
其中定义根据不同深度的变化的洋流方向的模型为:
其中,x,y,z为水下机器人的三维空间下的坐标,B(z)为随深度方向变化函数,k为调整系数,c为深度平衡系数,λ为角度权值系数;
(1.2)建立水下机器人的动力学模型:建模对象是一种可被波浪力、偏航力矩和升沉力驱动的水下机器人,并且具有相对于水平运动的垂直运动的解耦;其中水平运动为欠驱动;由于三维轨迹包括水平面和垂直平面上的运动,轨迹跟踪运动总体上视为欠驱动;为了简化控制律设计,忽略角速度[p,q]T,方向[φ,θ]T;通过运动学方法对欠驱动水下机器人的四自由度运动进行建模:
其中,η=[x,y,z,ψ]T是位置和姿态向量,μ=[u,v,w,r]T是速度矢量,τ=[τu,0,τwr]T是欠驱动致动器向量,τE=[τdudvdwdr]T是向量的外部干扰,M是身体质量矩阵,C(μ)表示科里奥利和向心矩阵,D(μ)阻力矩阵,g(η)为流体静压矢量;J(η)表示变换矩阵,描述如下:
(1.3)设置障碍:障碍分为固定障碍和移动障碍两种,其中移动障碍直径为倍l;移动障碍的速度为g倍水下机器人的最大速度;
(1.4)设置水下机器人的能耗模型:该系统中能耗的主要来源是在水流作用下控制水下机器人运动所消耗的能量,是车辆能量消耗的主要来源;从进入一个子空间到移动至下一个子空间所消耗的能量表示为:
其中ps=(Xuu2)2/2是喘振力功率,Xu是阻力系数增加的方向,u是水下机器人喘振速度,ph值是恒定的升沉功率,ψcd=ψcdc和ψd为同一步长的起点和终点的路径角差值;Uc为起点子空间的洋流方向;给定洋流速度,能量消耗随水下机器人喘振速度的变化而变化;
(2)将问题定义为一个抽象的马尔可夫决策过程:
首先构造一个抽象的马尔可夫决策MDP模型,使抽象的MDP模型中的规划等同于实际环境中的规划;这种等价性是通过确保价值等价来实现的,即从相同的真实状态开始,通过抽象的MDP模型的轨迹累积奖励与真实环境中的轨迹累积奖励相匹配;该抽象的MDP模型被看作是一个深层神经网络的隐藏层,通过对展开的抽象的MDP模型进行训练,使预期的累积奖励总和与实际环境的预期值相匹配;
水下机器人的状态空间为S,即一个无限的状态集,每一个智能体拥有动作空间A,即无限动作集合;执行动作后状态间的未知转移概率P:S×A×S→[0,1];即时奖励函数R:S×A→R;在t时刻,智能体在收到状态st后采取行动,预测在每个时间步长t,对于每个k=1…K步长,采用模型状态转移到st+1的概率为p(st+1∣st,at);那么优化问题表示为:
其中,π表示智能体使决策过程中产生的累积奖励最大化的一个策略,策略π(a∣s):S×A→[0,1]是状态空间S到动作空间A的函数映射,表示在状态s下采取行动a的概率,γ是贴现因子,范围为0≤γ≤1,T为MDP的决策步骤,rt表示智能体收到的即时奖励;
基于具有置信上界的蒙特卡罗树搜索,搜索树的每个节点都与一个隐藏状态s相关联;对于从s开始的每个动作a,都有一条边(s,a)存储了一组统计信息<N(s,a),Q(s,a),P(s,a),R(s,a),ST(s,a)>,分别代表访问数N、平均值Q、水下机器人的策略P、即时奖励R和状态转换ST
在每个时间步t执行蒙特卡罗树搜索,如上所述,从搜索策略πt中采样与根节点的每个动作的访问次数成比例at+1的动作;环境接受行动并产生新的观察结果ot+1和奖励ut+1;在每次模拟结束时,轨迹数据被存储到一个回放缓冲区;之后对模型的所有参数进行联合训练,其损失函数lt为:
其中,lr为奖励损失,由实际奖励ut+k和预测奖励构成;lv为价值损失,由实际价值zt+k和预测价值/>构成;lp为预测损失,由实际决策πt+k和预测决策/>构成;c||θ||2是参数θ的L2正则,防止过拟合;
在进行训练时,为了解决奖励稀疏和值函数的噪声造成的学习环境模型不够稳定的问题,引入了自监督预测;在上个步骤进行回放缓冲器中采样时,将ot和ot+1输入表征函数,得到隐藏状态st和st+1;通过隐藏状态st选择at得到状态将/>和st+1进行对比比较差异;这个方法加强了对环境变换的学习;隐藏状态相似度的函数为:
其中,为余弦相似度损失,/>为隐藏状态相似度,g为动力学函数,其中g1为原本的动力学函数,g2为预测/>的动力学函数;st+1为实际的隐藏状态,/>为预测得到的隐藏状态;
如果采样的轨迹较老会导致增大智能体的策略分歧的现象,所以使用最后一个状态st+l用于当前策略重做蒙特卡罗树搜索,并在根节点计算经验平均值;所以值修正函数为:
其中,w表示来自旧轨迹的动力学范围,l<=k;当轨迹越老时,l越小;vMCTS(st+l)表示st+l在当前策略下扩展得到的蒙特卡罗树树的根值;γ表示贴现因子,r表示瞬时奖励;
此外,关于奖励函数的设置,第一部分侧重于路径跟踪,简单地惩罚期望和实际的航向角和仰角之间的误差,跟踪奖励为:
其中,和/>是航向角和仰角,cχ和cv是决定偏离航向严重程度的对应负权值;
第二部分侧重于避障,避障奖励为:
其中,距离测量被转换成一个成比例的反比量,定义为障碍接近度di,j表示障碍物距离水下机器人的水平面直线距离,dmax表示声纳最大距离;∈c为设计参数;
那么,整体的奖励函数rt表示为:
其中,λr为奖励系数,cet为表示洋流利用水平的系数;
为了模拟动态障碍的随机性,在进行动作选取结束后,引入了以矢量量化的环境行动;使用了矢量量化变分自动编码器诱导的抽象离散潜在空间;蒙特卡罗树搜索中的搜索树由两类节点组成:动作节点和随机节点;在选择阶段,蒙特卡罗树搜索从根节点开始向下移动搜索树:对于一个动作节点,通过VQ-VAE进行随机节点动作的生成,对随机节点选择离散潜码的方法为:
其中,k为通过VQ-VAE编码器得到的隐藏向量,P(k∣s)表示离散潜码的学习策略;表示环境可能的随机反应,c1和c2是控制策略P(k∣s)相对于值Q(s,k)的影响的常量;U(s,k)为帮助搜索的评分函数;N(s,k)表示对于状态s的动作k被访问的次数,N(s)=ΣbN(s,b)即对于状态s被访问的总次数;
(3)基于深度强化学习算法进行训练:
受MuZero算法启发,提出了一种新的算法HFOA,采用集中式训练和分布式执行的架构,在训练时使用全局信息,能够更好地指导水下机器人的决策函数的梯度更新,在执行时水下机器人仅使用自己观察到的已知洋流信息和局部观测做出下一步决策;预测在每个时间步长t,对于每个k=1…K步长,通过采用一个参数θ的模型μθ,模型的条件基于智能体的过去观测o1,…,ot和选择的未来动作at+1,…,at+k;其中,模型预测水下机器人的三个未来的量,分别为水下机器人预测策略函数:预测价值函数:/>预测即时奖励:/>步骤(3)包括:
(3.1)初始化蒙特卡罗树、回放缓存器、表征函数、动力学函数以及预测函数的各项参数;
(3.2)初始化训练回合epoch=0;
(3.3)初始化时间步长t=0;
(3.4)t=t+1;
(3.5)进行线上训练,获得当前系统隐藏状态和智能体的观测,智能体基于自己的决策函数输出动作,通过随机节点进行随机动作的选择并获得奖励并达到下一状态并获得观测;将这一过程的轨迹存入回放缓存器,这之中的每个模拟根据初始情况的观察产生初始的隐藏状态s0,当模拟到达一个叶节点sl时结束;
(3.6)回放缓存器样本数是否大于B,如果是执行下一步,不是返回步骤(3.5);
(3.7)令m=0;
(3.8)m=m+1;
(3.9)从回放缓存器选取样本轨迹,提取观测,计算选择的动作及奖励,建立拓展的叶子节点;此外,计算隐藏状态相似度,之后更新值函数和对应边数据;
对于模拟中每个假设的时间步长k=1…l中,根据内部状态sk-1的存储统计信息选择动作ak,之后最大限度地提高置信上限;
其中,q1和q2为控制常数,用于控制先验P(s,a)相对于值Q(s,a)在节点被访问得更频繁时的影响;对于每一个源自状态s的行动a,N(s,a)表示被访问的次数,b表示a的兄弟姐妹节点;Q(s,a)是Q值的当前估计值,P(s,a)表示当前选择该动作的神经网络策略,s表示状态;
在模拟的最终时间步长l时,由动力学函数rl,sl=gθ(sl-1,al)计算奖励和状态,并将其存储在相应的表中,R(sl-1,al)=rl,S(sl-1,al)=sl,由预测函数pl,vl=fθ(sl)计算策略和值;一个与状态sl对应的新节点被添加到搜索树中;新展开节点的每条边(sl,a)被初始化为{N(sl,a)=0,Q(sl,a)=0,P(sl,a)=pl};搜索算法在每次模拟中最多分别调用一次动力学函数和预测函数;
在模拟的最后,更新了轨迹的统计数据;更新后的值函数为:
其中Gk为更新沿轨迹的统计信息,γ为贴现因子,r为瞬时奖励,v为值函数;
更新后的每条边为:
N(sk-1,ak):=N(sk-1,ak)+1
其中N(s,a)表示被访问的次数,Gk为更新沿轨迹的统计信息,Q(s,a)是Q值的当前估计值;
(3.10)计算m是否小于M,是则返回步骤(3.8),否则计算t是否小于T,是则返回步骤(3.4),否则计算epoch是否小于P,是则将epoch加1并返回步骤(3.3),否则得到最终得到水下机器人的控制策略。
本发明的有益效果:本发明涉及一种基于强化学习的水下机器人避障路径规划方法,将水下机器人对到达路径点的能耗与时长最小化问题建模为抽象的马尔可夫决策过程;通过水下机器人与环境的不断交互学习环境模型,得到即时奖励改进神经网络。最后将训练好的策略网络部署到水下机器人中,水下机器人可以基于自身的位置信息和预测的流场得到移动方向和移动距离决策,并在面对障碍时进行规避。此外,本发明还将能耗损失信息和时间成本引入到奖励函数中,在提高洋流利用能力的同时保证了时间成本消耗的减小。并且利用SPR自预测表征对训练速度进行提升,另外对低数据量下的训练进行了改良,使该发明更适合数据量较少的水下场景。
附图说明
图1是本发明所述的水下环境场景示意图。
图2是本发明一种基于强化学习的水下机器人避障路径规划方法的流程图。
图3是本发明基于强化学习的训练水下机器人分布式策略网络的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
一种基于强化学习的水下机器人避障路径规划方法,应用于有较强洋流和动态障碍的水下环境中。如图1所示,该区域障碍较多,由水下机器人作为移动基站进行通信覆盖,由于水下场景具有洋流且障碍是动态变化的,水下机器人需要不断调整自身的下一步的路径,以实现更好的目标追踪。同时还要考虑时间成本和能耗损失和安全成本,不能因为时间成本最低的路径损失了安全成本,并尽可能减少水下机器人移动所造成的能耗损失。本发明的流程如图2所示,首先对水下机器人的能耗模型以及动力学模型,水下洋流场景模型进行建模,其中水下洋流场景模型包括分层的强流场模型和静态障碍以及动态障碍模型;其次将水下机器人对到达路径点的能耗与时长最小化问题建模为抽象的马尔可夫决策过程;然后,使用仿真平台模拟该场景,通过水下机器人和环境的交互采集样本,使用智能体深度强化学习进行集中式训练,得到水下机器人的适应环境策略。最后,将训练好的策略网络部署到水下机器人中,将无人机集群部署到目标区域,无人机互相协作完成高效、低能耗、安全的避障追踪。
具体步骤如下:
(1)建立水下环境模型,包括以下4个步骤:
(1.1)建立场景模型:建立一个边长为L的正方形目标区域,该区域中有n3个长度为l的正方形子空间,每个子空间拥有一个洋流速度为k倍于水下机器人最大速度的洋流;时间被划分为T个相同的时隙,从上一时隙到当前时隙移动时,水下机器人由于进行移动时受洋流流速影响较大,因此要不断根据洋流方向和障碍做出路径选择的决策,并使能耗最小化;其中vm为水下机器人的实际速度,vc为水平方向洋流速度,vs为水下机器人水平方向的最大速度;
vm=vc+vs
其中定义根据不同深度的变化的洋流方向的模型为:
其中,x,y,z为水下机器人的三维空间下的坐标,B(z)为随深度方向变化函数,k为调整系数,c为深度平衡系数,λ为角度权值系数;
(1.2)建立水下机器人的动力学模型:建模对象是一种可被波浪力、偏航力矩和升沉力驱动的水下机器人,并且具有相对于水平运动的垂直运动的解耦;其中水平运动为欠驱动;由于三维轨迹包括水平面和垂直平面上的运动,轨迹跟踪运动总体上视为欠驱动;为了简化控制律设计,忽略角速度[p,q]T,方向[φ,θ]T;通过运动学方法对欠驱动水下机器人的四自由度运动进行建模:
其中,η=[x,y,z,ψ]T是位置和姿态向量,μ=[u,v,w,r]T是速度矢量,τ=[τu,0,τwr]T是欠驱动致动器向量,τE=[τdudvdwdr]T是向量的外部干扰,M是身体质量矩阵,C(μ)表示科里奥利和向心矩阵,D(μ)阻力矩阵,g(η)为流体静压矢量;J(η)表示变换矩阵,描述如下:
(1.3)设置障碍:障碍分为固定障碍和移动障碍两种,其中移动障碍直径为倍l;移动障碍的速度为g倍水下机器人的最大速度;
(1.4)设置水下机器人的能耗模型:该系统中能耗的主要来源是在水流作用下控制水下机器人运动所消耗的能量,是车辆能量消耗的主要来源;从进入一个子空间到移动至下一个子空间所消耗的能量表示为:
其中ps=(Xuu2)2/2是喘振力功率,Xu是阻力系数增加的方向,u是水下机器人喘振速度,ph值是恒定的升沉功率,ψcd=ψcdc和ψd为同一步长的起点和终点的路径角差值;Uc为起点子空间的洋流方向;给定洋流速度,能量消耗随水下机器人喘振速度的变化而变化;
(2)将问题定义为一个抽象的马尔可夫决策过程:
首先构造一个抽象的马尔可夫决策MDP模型,使抽象的MDP模型中的规划等同于实际环境中的规划;这种等价性是通过确保价值等价来实现的,即从相同的真实状态开始,通过抽象的MDP模型的轨迹累积奖励与真实环境中的轨迹累积奖励相匹配;该抽象的MDP模型被看作是一个深层神经网络的隐藏层,通过对展开的抽象的MDP模型进行训练,使预期的累积奖励总和与实际环境的预期值相匹配;
水下机器人的状态空间为S,即一个无限的状态集,每一个智能体拥有动作空间A,即无限动作集合;执行动作后状态间的未知转移概率P:S×A×S→[0,1];即时奖励函数R:S×A→R;在t时刻,智能体在收到状态st后采取行动,预测在每个时间步长t,对于每个k=1…K步长,采用模型状态转移到st+1的概率为p(st+1∣st,at);那么优化问题表示为:
其中,π表示智能体使决策过程中产生的累积奖励最大化的一个策略,策略π(a∣s):S×A→[0,1]是状态空间S到动作空间A的函数映射,表示在状态s下采取行动a的概率,γ是贴现因子,范围为0≤γ≤1,T为MDP的决策步骤,rt表示智能体收到的即时奖励;
基于具有置信上界的蒙特卡罗树搜索,搜索树的每个节点都与一个隐藏状态s相关联;对于从s开始的每个动作a,都有一条边(s,a)存储了一组统计信息<N(s,a),Q(s,a),P(s,a),R(s,a),ST(s,a)>,分别代表访问数N、平均值Q、水下机器人的策略P、即时奖励R和状态转换ST
在每个时间步t执行蒙特卡罗树搜索,如上所述,从搜索策略πt中采样与根节点的每个动作的访问次数成比例at+1的动作;环境接受行动并产生新的观察结果ot+1和奖励ut+1;在每次模拟结束时,轨迹数据被存储到一个回放缓冲区;之后对模型的所有参数进行联合训练,其损失函数lt为:
其中,lr为奖励损失,由实际奖励ut+k和预测奖励构成;lv为价值损失,由实际价值zt+k和预测价值/>构成;lp为预测损失,由实际决策πt+k和预测决策/>构成;c||θ||2是参数θ的L2正则,防止过拟合;
在进行训练时,为了解决奖励稀疏和值函数的噪声造成的学习环境模型不够稳定的问题,引入了自监督预测;在上个步骤进行回放缓冲器中采样时,将ot和ot+1输入表征函数,得到隐藏状态st和st+1;通过隐藏状态st选择at得到状态将/>和st+1进行对比比较差异;这个方法加强了对环境变换的学习;隐藏状态相似度的函数为:
其中,为余弦相似度损失,/>为隐藏状态相似度,g为动力学函数,其中g1为原本的动力学函数,g2为预测/>的动力学函数;st+1为实际的隐藏状态,/>为预测得到的隐藏状态;
如果采样的轨迹较老会导致增大智能体的策略分歧的现象,所以使用最后一个状态st+l用于当前策略重做蒙特卡罗树搜索,并在根节点计算经验平均值;所以值修正函数为:
其中,w表示来自旧轨迹的动力学范围,l<=k;当轨迹越老时,l越小;vMCTS(st+l)表示st+l在当前策略下扩展得到的蒙特卡罗树树的根值;γ表示贴现因子,r表示瞬时奖励;
此外,关于奖励函数的设置,第一部分侧重于路径跟踪,简单地惩罚期望和实际的航向角和仰角之间的误差,跟踪奖励为:
其中,和/>是航向角和仰角,cχ和cv是决定偏离航向严重程度的对应负权值;
第二部分侧重于避障,避障奖励为:
其中,距离测量被转换成一个成比例的反比量,定义为障碍接近度di,j表示障碍物距离水下机器人的水平面直线距离,dmax表示声纳最大距离;∈c为设计参数;
那么,整体的奖励函数rt表示为:
其中,λr为奖励系数,cet为表示洋流利用水平的系数;
为了模拟动态障碍的随机性,在进行动作选取结束后,引入了以矢量量化的环境行动;使用了矢量量化变分自动编码器诱导的抽象离散潜在空间;蒙特卡罗树搜索中的搜索树由两类节点组成:动作节点和随机节点;在选择阶段,蒙特卡罗树搜索从根节点开始向下移动搜索树:对于一个动作节点,通过VQ-VAE进行随机节点动作的生成,对随机节点选择离散潜码的方法为:
其中,k为通过VQ-VAE编码器得到的隐藏向量,P(k∣s)表示离散潜码的学习策略;表示环境可能的随机反应,c1和c2是控制策略P(k∣s)相对于值Q(s,k)的影响的常量;U(s,k)为帮助搜索的评分函数;N(s,k)表示对于状态s的动作k被访问的次数,N(s)=∑bN(s,b)即对于状态s被访问的总次数;
(3)基于深度强化学习算法进行训练:
受MuZero算法启发,提出了一种新的算法HFOA,采用集中式训练和分布式执行的架构,在训练时使用全局信息,能够更好地指导水下机器人的决策函数的梯度更新,在执行时水下机器人仅使用自己观察到的已知洋流信息和局部观测做出下一步决策;预测在每个时间步长t,对于每个k=1…K步长,通过采用一个参数θ的模型μθ,模型的条件基于智能体的过去观测o1,…,ot和选择的未来动作at+1,…,at+k;其中,模型预测水下机器人的三个未来的量,分别为水下机器人预测策略函数:预测价值函数:/>预测即时奖励:/>步骤(3)包括:
(3.1)初始化蒙特卡罗树、回放缓存器、表征函数、动力学函数以及预测函数的各项参数;
(3.2)初始化训练回合epoch=0;
(3.3)初始化时间步长t=0;
(3.4)t=t+1;
(3.5)进行线上训练,获得当前系统隐藏状态和智能体的观测,智能体基于自己的决策函数输出动作,通过随机节点进行随机动作的选择并获得奖励并达到下一状态并获得观测;将这一过程的轨迹存入回放缓存器,这之中的每个模拟根据初始情况的观察产生初始的隐藏状态s0,当模拟到达一个叶节点sl时结束;
(3.6)回放缓存器样本数是否大于B,如果是执行下一步,不是返回步骤(3.5);
(3.7)令m=0;
(3.8)m=m+1;
(3.9)从回放缓存器选取样本轨迹,提取观测,计算选择的动作及奖励,建立拓展的叶子节点;此外,计算隐藏状态相似度,之后更新值函数和对应边数据;
对于模拟中每个假设的时间步长k=1…l中,根据内部状态sk-1的存储统计信息选择动作ak,之后最大限度地提高置信上限;
/>
其中,q1和q2为控制常数,用于控制先验P(s,a)相对于值Q(s,a)在节点被访问得更频繁时的影响;对于每一个源自状态s的行动a,N(s,a)表示被访问的次数,b表示a的兄弟姐妹节点;Q(s,a)是Q值的当前估计值,P(s,a)表示当前选择该动作的神经网络策略,s表示状态;
在模拟的最终时间步长l时,由动力学函数rl,sl=gθ(sl-1,al)计算奖励和状态,并将其存储在相应的表中,R(sl-1,al)=rl,S(sl-1,al)=sl,由预测函数pl,vl=fθ(sl)计算策略和值;一个与状态sl对应的新节点被添加到搜索树中;新展开节点的每条边(sl,a)被初始化为{N(sl,a)=0,Q(sl,a)=0,P(sl,a)=pl};搜索算法在每次模拟中最多分别调用一次动力学函数和预测函数;
在模拟的最后,更新了轨迹的统计数据;更新后的值函数为:
其中Gk为更新沿轨迹的统计信息,γ为贴现因子,r为瞬时奖励,v为值函数;
更新后的每条边为:
N(sk-1,ak):=N(sk-1,ak)+1
其中N(s,a)表示被访问的次数,Gk为更新沿轨迹的统计信息,Q(s,a)是Q值的当前估计值;
(3.10)计算m是否小于M,是则返回步骤(3.8),否则计算t是否小于T,是则返回步骤(3.4),否则计算epoch是否小于P,是则将epoch加1并返回步骤(3.3),否则得到最终得到水下机器人的控制策略。
综上所述:
本发明提出一种基于强化学习的水下机器人的避障路径规划方法,通过对水下机器人的能耗模型以及动力学模型,水下洋流场景模型进行建模,将水下机器人对到达路径点的能耗与时长最小化问题建模为抽象的马尔可夫决策过程;使用智能体深度强化学习进行集中式训练,得到水下机器人的适应环境策略。最后,将训练好的策略网络部署到水下机器人中,将无人机集群部署到目标区域,无人机互相协作完成高效、低能耗、安全的避障追踪。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (1)

1.一种基于强化学习的水下机器人避障路径规划方法,其特征在于,步骤如下:
(1)建立水下环境模型,包括以下4个步骤:
(1.1)建立场景模型:建立一个边长为L的正方形目标区域,该区域中有n3个长度为l的正方形子空间,每个子空间拥有一个洋流速度为k倍于水下机器人最大速度的洋流;时间被划分为T个相同的时隙,从上一时隙到当前时隙移动时,水下机器人由于进行移动时受洋流流速影响较大,因此要不断根据洋流方向和障碍做出路径选择的决策,并使能耗最小化;其中vm为水下机器人的实际速度,vc为水平方向洋流速度,vs为水下机器人水平方向的最大速度;
vm=vc+vs
其中定义根据不同深度的变化的洋流方向的模型为:
其中,x,y,z为水下机器人的三维空间下的坐标,B(z)为随深度方向变化函数,k为调整系数,c为深度平衡系数,λ为角度权值系数;
(1.2)建立水下机器人的动力学模型:建模对象是一种可被波浪力、偏航力矩和升沉力驱动的水下机器人,并且具有相对于水平运动的垂直运动的解耦;其中水平运动为欠驱动;由于三维轨迹包括水平面和垂直平面上的运动,轨迹跟踪运动总体上视为欠驱动;为了简化控制律设计,忽略角速度[p,q]T,方向[φ,θ]T;通过运动学方法对欠驱动水下机器人的四自由度运动进行建模:
其中,η=[x,y,z,ψ]T是位置和姿态向量,μ=[u,v,w,r]T是速度矢量,τ=[τu,0,τw,τr]T是欠驱动致动器向量,τE=[τdu,τdv,τdw,τdr]T是向量的外部干扰,M是身体质量矩阵,C(μ)表示科里奥利和向心矩阵,D(μ)阻力矩阵,g(η)为流体静压矢量;J(η)表示变换矩阵,描述如下:
(1.3)设置障碍:障碍分为固定障碍和移动障碍两种,其中移动障碍直径为倍l;移动障碍的速度为g倍水下机器人的最大速度;
(1.4)设置水下机器人的能耗模型:系统中能耗的主要来源是在水流作用下控制水下机器人运动所消耗的能量,是车辆能量消耗的主要来源;从进入一个子空间到移动至下一个子空间所消耗的能量表示为:
其中ps=(Xuu2)2/2是喘振力功率,Xu是阻力系数增加的方向,u是水下机器人喘振速度,ph值是恒定的升沉功率,ψcd=ψcd,ψc和ψd为同一步长的起点和终点的路径角差值;Uc为起点子空间的洋流方向;给定洋流速度,能量消耗随水下机器人喘振速度的变化而变化;
(2)将问题定义为一个抽象的马尔可夫决策过程:
首先构造一个抽象的马尔可夫决策MDP模型,使抽象的MDP模型中的规划等同于实际环境中的规划;这种等价性是通过确保价值等价来实现的,即从相同的真实状态开始,通过抽象的MDP模型的轨迹累积奖励与真实环境中的轨迹累积奖励相匹配;该抽象的MDP模型被看作是一个深层神经网络的隐藏层,通过对展开的抽象的MDP模型进行训练,使预期的累积奖励总和与实际环境的预期值相匹配;
水下机器人的状态空间为S,即一个无限的状态集,每一个智能体拥有动作空间A,即无限动作集合;执行动作后状态间的未知转移概率P:S×A×S→[0,1];即时奖励函数R:S×A→R;在t时刻,智能体在收到状态st后采取行动,预测在每个时间步长t,对于每个k=1...K步长,采用模型状态转移到st+1的概率为p(st+1|st,at);那么优化问题表示为:
其中,π表示智能体使决策过程中产生的累积奖励最大化的一个策略,策略π(a|s):S×A→[0,1]是状态空间S到动作空间A的函数映射,表示在状态s下采取行动a的概率,γ是贴现因子,范围为0≤γ≤1,T为MDP的决策步骤,rt表示智能体收到的即时奖励;
基于具有置信上界的蒙特卡罗树搜索,搜索树的每个节点都与一个隐藏状态s相关联;对于从s开始的每个动作a,都有一条边(s,a)存储了一组统计信息<N(s,a),Q(s,a),P(s,a),R(s,a),ST(s,a)>,分别代表访问数N、平均值Q、水下机器人的策略P、即时奖励R和状态转换ST
在每个时间步t执行蒙特卡罗树搜索,如上所述,从搜索策略πt中采样与根节点的每个动作的访问次数成比例at+1的动作;环境接受行动并产生新的观察结果ot+1和奖励ut+1;在每次模拟结束时,轨迹数据被存储到一个回放缓冲区;之后对模型的所有参数进行联合训练,其损失函数lt为:
其中,lr为奖励损失,由实际奖励ut+k和预测奖励构成;lv为价值损失,由实际价值zt+k和预测价值/>构成;lp为预测损失,由实际决策πt+k和预测决策/>构成;c||θ||2是参数θ的L2正则,防止过拟合;
在进行训练时,为了解决奖励稀疏和值函数的噪声造成的学习环境模型不够稳定的问题,引入了自监督预测;在上个步骤进行回放缓冲器中采样时,将ot和ot+1输入表征函数,得到隐藏状态st和st+1;通过隐藏状态st选择at得到状态将/>和st+1进行对比比较差异;这个方法加强了对环境变换的学习;隐藏状态相似度的函数为:
其中,为余弦相似度损失,/>为隐藏状态相似度,g为动力学函数,其中g1为原本的动力学函数,g2为预测/>的动力学函数;st+1为实际的隐藏状态,/>为预测得到的隐藏状态;
如果采样的轨迹较老会导致增大智能体的策略分歧的现象,所以使用最后一个状态st+l用于当前策略重做蒙特卡罗树搜索,并在根节点计算经验平均值;所以值修正函数为:
其中,w表示来自旧轨迹的动力学范围,l<=k;当轨迹越老时,l越小;表示st+l在当前策略下扩展得到的蒙特卡罗树树的根值;γ表示贴现因子,r表示瞬时奖励;
此外,关于奖励函数的设置,第一部分侧重于路径跟踪,简单地惩罚期望和实际的航向角和仰角之间的误差,跟踪奖励为:
其中,和/>是航向角和仰角,cχ和cv是决定偏离航向严重程度的对应负权值;
第二部分侧重于避障,避障奖励为:
其中,距离测量被转换成一个成比例的反比量,定义为障碍接近度di,j表示障碍物距离水下机器人的水平面直线距离,dmax表示声纳最大距离;∈c为设计参数;
那么,整体的奖励函数rt表示为:
其中,λr为奖励系数,cet为表示洋流利用水平的系数;
为了模拟动态障碍的随机性,在进行动作选取结束后,引入了以矢量量化的环境行动;使用了矢量量化变分自动编码器诱导的抽象离散潜在空间;蒙特卡罗树搜索中的搜索树由两类节点组成:动作节点和随机节点;在选择阶段,蒙特卡罗树搜索从根节点开始向下移动搜索树:对于一个动作节点,通过VQ-VAE进行随机节点动作的生成,对随机节点选择离散潜码的方法为:
其中,k为通过VQ-VAE编码器得到的隐藏向量,P(k|s)表示离散潜码的学习策略;表示环境可能的随机反应,c1和c2是控制策略P(k|s)相对于值Q(s,k)的影响的常量;U(s,k)为帮助搜索的评分函数;N(s,k)表示对于状态s的动作k被访问的次数,N(s)=∑bN(s,b)即对于状态s被访问的总次数;
(3)基于深度强化学习算法进行训练:
受MuZero算法启发,提出了一种新的算法HFOA,采用集中式训练和分布式执行的架构,在训练时使用全局信息,能够更好地指导水下机器人的决策函数的梯度更新,在执行时水下机器人仅使用自己观察到的已知洋流信息和局部观测做出下一步决策;预测在每个时间步长t,对于每个k=1...K步长,通过采用一个参数θ的模型μθ,模型的条件基于智能体的过去观测o1,...,ot和选择的未来动作at+1,...,at+k;其中,模型预测水下机器人的三个未来的量,分别为水下机器人预测策略函数:预测价值函数:/>预测即时奖励:/>步骤(3)包括:
(3.1)初始化蒙特卡罗树、回放缓存器、表征函数、动力学函数以及预测函数的各项参数;
(3.2)初始化训练回合epoch=0;
(3.3)初始化时间步长t=0;
(3.4)t=t+1;
(3.5)进行线上训练,获得当前系统隐藏状态和智能体的观测,智能体基于自己的决策函数输出动作,通过随机节点进行随机动作的选择并获得奖励并达到下一状态并获得观测;将这一过程的轨迹存入回放缓存器,这之中的每个模拟根据初始情况的观察产生初始的隐藏状态s0,当模拟到达一个叶节点sl时结束;
(3.6)回放缓存器样本数是否大于B,如果是执行下一步,不是返回步骤(3.5);
(3.7)令m=0;
(3.8)m=m+1;
(3.9)从回放缓存器选取样本轨迹,提取观测,计算选择的动作及奖励,建立拓展的叶子节点;此外,计算隐藏状态相似度,之后更新值函数和对应边数据;
对于模拟中每个假设的时间步长k=1...l中,根据内部状态sk-1的存储统计信息选择动作ak,之后最大限度地提高置信上限;
其中,q1和q2为控制常数,用于控制先验P(s,a)相对于值Q(s,a)在节点被访问得更频繁时的影响;对于每一个源自状态s的行动a,N(s,a)表示被访问的次数,b表示a的兄弟姐妹节点;Q(s,a)是Q值的当前估计值,P(s,a)表示当前选择该动作的神经网络策略,s表示状态;
在模拟的最终时间步长l时,由动力学函数rl,sl=gθ(sl-1,al)计算奖励和状态,并将其存储在相应的表中,R(sl-1,al)=rl,S(sl-1,al)=sl,由预测函数pl,vl=fθ(sl)计算策略和值;一个与状态sl对应的新节点被添加到搜索树中;新展开节点的每条边(sl,a)被初始化为{N(sl,a)=0,Q(sl,a)=0,P(sl,a)=pl};搜索算法在每次模拟中最多分别调用一次动力学函数和预测函数;
在模拟的最后,更新了轨迹的统计数据;更新后的值函数为:
其中Gk为更新沿轨迹的统计信息,γ为贴现因子,r为瞬时奖励,v为值函数;
更新后的每条边为:
N(sk-1,ak):=N(sk-1,ak)+1
其中N(s,a)表示被访问的次数,Gk为更新沿轨迹的统计信息,Q(s,a)是Q值的当前估计值;
(3.10)计算m是否小于M,是则返回步骤(3.8),否则计算t是否小于T,是则返回步骤(3.4),否则计算epoch是否小于P,是则将epoch加1并返回步骤(3.3),否则得到最终得到水下机器人的控制策略。
CN202210236892.XA 2022-03-10 2022-03-10 一种基于强化学习的水下机器人避障路径规划方法 Active CN114625151B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210236892.XA CN114625151B (zh) 2022-03-10 2022-03-10 一种基于强化学习的水下机器人避障路径规划方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210236892.XA CN114625151B (zh) 2022-03-10 2022-03-10 一种基于强化学习的水下机器人避障路径规划方法

Publications (2)

Publication Number Publication Date
CN114625151A CN114625151A (zh) 2022-06-14
CN114625151B true CN114625151B (zh) 2024-05-28

Family

ID=81902706

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210236892.XA Active CN114625151B (zh) 2022-03-10 2022-03-10 一种基于强化学习的水下机器人避障路径规划方法

Country Status (1)

Country Link
CN (1) CN114625151B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115268494B (zh) * 2022-07-26 2024-05-28 江苏科技大学 基于分层强化学习的无人机路径规划方法
CN115200917B (zh) * 2022-09-18 2022-12-06 江苏壹心智能科技有限公司 一种设备运行出厂检测用测试舱
CN115657683B (zh) * 2022-11-14 2023-05-02 中国电子科技集团公司第十研究所 一种可用于巡检作业任务的无人无缆潜水器实时避障方法
CN117079118B (zh) * 2023-10-16 2024-01-16 广州华夏汇海科技有限公司 基于视觉检测的水下行走检测方法及系统
CN117213501B (zh) * 2023-11-09 2024-02-02 成都工业职业技术学院 一种基于分布式模型预测的机器人避障规划方法
CN117325186A (zh) * 2023-11-30 2024-01-02 宁德思客琦智能装备有限公司 一种基于采样机械臂路径规划的方法及系统
CN117606490B (zh) * 2024-01-23 2024-05-14 吉林大学 一种水下自主航行器协同搜索路径规划方法
CN117963099B (zh) * 2024-03-29 2024-06-04 沈阳鑫余网络科技有限公司 一种无人驾驶艇避障装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109540151A (zh) * 2018-03-25 2019-03-29 哈尔滨工程大学 一种基于强化学习的auv三维路径规划方法
CN111786713A (zh) * 2020-06-04 2020-10-16 大连理工大学 一种基于多智能体深度强化学习的无人机网络悬停位置优化方法
CN112241176A (zh) * 2020-10-16 2021-01-19 哈尔滨工程大学 一种水下自主航行器在大尺度连续性障碍物环境中路径规划避障控制方法
JP2021034050A (ja) * 2019-08-21 2021-03-01 哈爾浜工程大学 強化学習に基づくauv行動計画及び動作制御方法
CN113110592A (zh) * 2021-04-23 2021-07-13 南京大学 一种无人机避障与路径规划方法
CN113190039A (zh) * 2021-04-27 2021-07-30 大连理工大学 一种基于分层深度强化学习的无人机采集路径规划方法
CN113891275A (zh) * 2021-10-12 2022-01-04 大连理工大学 一种基于迁移学习的水下无线传感器网络信任模型

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109540151A (zh) * 2018-03-25 2019-03-29 哈尔滨工程大学 一种基于强化学习的auv三维路径规划方法
JP2021034050A (ja) * 2019-08-21 2021-03-01 哈爾浜工程大学 強化学習に基づくauv行動計画及び動作制御方法
CN111786713A (zh) * 2020-06-04 2020-10-16 大连理工大学 一种基于多智能体深度强化学习的无人机网络悬停位置优化方法
CN112241176A (zh) * 2020-10-16 2021-01-19 哈尔滨工程大学 一种水下自主航行器在大尺度连续性障碍物环境中路径规划避障控制方法
CN113110592A (zh) * 2021-04-23 2021-07-13 南京大学 一种无人机避障与路径规划方法
CN113190039A (zh) * 2021-04-27 2021-07-30 大连理工大学 一种基于分层深度强化学习的无人机采集路径规划方法
CN113891275A (zh) * 2021-10-12 2022-01-04 大连理工大学 一种基于迁移学习的水下无线传感器网络信任模型

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于改进运动平衡点的水下机器人自主避障方法研究;孙玉山;张英浩;常文田;李岳明;;中国造船;20130625(第02期);全文 *

Also Published As

Publication number Publication date
CN114625151A (zh) 2022-06-14

Similar Documents

Publication Publication Date Title
CN114625151B (zh) 一种基于强化学习的水下机器人避障路径规划方法
CN112241176B (zh) 一种水下自主航行器在大尺度连续性障碍物环境中路径规划避障控制方法
Li et al. Path planning for UAV ground target tracking via deep reinforcement learning
CN113110592B (zh) 一种无人机避障与路径规划方法
CN111780777B (zh) 一种基于改进a*算法和深度强化学习的无人车路径规划方法
Cao et al. Target search control of AUV in underwater environment with deep reinforcement learning
CN108388250B (zh) 一种基于自适应布谷鸟搜索算法的水面无人艇路径规划方法
CN113033119B (zh) 一种基于双评论家强化学习技术的水下航行器目标区域上浮控制方法
Xiaofei et al. Global path planning algorithm based on double DQN for multi-tasks amphibious unmanned surface vehicle
CN113052372B (zh) 一种基于深度强化学习的动态auv追踪路径规划方法
CN110703766A (zh) 一种基于迁移学习策略深度q网络的无人机路径规划方法
Song et al. Guidance and control of autonomous surface underwater vehicles for target tracking in ocean environment by deep reinforcement learning
CN114199248B (zh) 一种基于混合元启发算法优化anfis的auv协同定位方法
CN110906935A (zh) 一种无人艇路径规划方法
CN109858137A (zh) 一种基于可学习扩展卡尔曼滤波的复杂机动飞行器航迹估计方法
Lan et al. Path planning for underwater gliders in time-varying ocean current using deep reinforcement learning
CN115033022A (zh) 面向移动平台基于专家经验的ddpg无人机降落方法
CN116151102A (zh) 一种空间目标超短弧初始轨道智能确定方法
CN117590867B (zh) 基于深度强化学习的水下自主航行器接驳控制方法和系统
Huang et al. 3D search path planning for the blended-wing-body underwater glider
Zhang et al. Intelligent vector field histogram based collision avoidance method for auv
Qiu et al. Development of hybrid neural network and current forecasting model based dead reckoning method for accurate prediction of underwater glider position
Xu et al. Ga-DQN: A Gravity-aware DQN Based UAV Path Planning Algorithm
Masmitja et al. A reinforcement learning path planning approach for range-only underwater target localization with autonomous vehicles
Song et al. Search and tracking strategy of autonomous surface underwater vehicle in oceanic eddies based on deep reinforcement learning

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant