CN113033118A - 一种基于示范数据强化学习技术的水下航行器自主上浮控制方法 - Google Patents

一种基于示范数据强化学习技术的水下航行器自主上浮控制方法 Download PDF

Info

Publication number
CN113033118A
CN113033118A CN202110260783.7A CN202110260783A CN113033118A CN 113033118 A CN113033118 A CN 113033118A CN 202110260783 A CN202110260783 A CN 202110260783A CN 113033118 A CN113033118 A CN 113033118A
Authority
CN
China
Prior art keywords
underwater vehicle
network
target
actor
output
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.)
Granted
Application number
CN202110260783.7A
Other languages
English (en)
Other versions
CN113033118B (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.)
Shandong University
Original Assignee
Shandong University
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 Shandong University filed Critical Shandong University
Priority to CN202110260783.7A priority Critical patent/CN113033118B/zh
Publication of CN113033118A publication Critical patent/CN113033118A/zh
Application granted granted Critical
Publication of CN113033118B publication Critical patent/CN113033118B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/28Design optimisation, verification or simulation using fluid dynamics, e.g. using Navier-Stokes equations or computational fluid dynamics [CFD]
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B63SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
    • B63GOFFENSIVE OR DEFENSIVE ARRANGEMENTS ON VESSELS; MINE-LAYING; MINE-SWEEPING; SUBMARINES; AIRCRAFT CARRIERS
    • B63G8/00Underwater vessels, e.g. submarines; Equipment specially adapted therefor
    • B63G8/14Control of attitude or depth
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B63SHIPS OR OTHER WATERBORNE VESSELS; RELATED EQUIPMENT
    • B63GOFFENSIVE OR DEFENSIVE ARRANGEMENTS ON VESSELS; MINE-LAYING; MINE-SWEEPING; SUBMARINES; AIRCRAFT CARRIERS
    • B63G8/00Underwater vessels, e.g. submarines; Equipment specially adapted therefor
    • B63G8/14Control of attitude or depth
    • B63G8/18Control of attitude or depth by hydrofoils
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mechanical Engineering (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Algebra (AREA)
  • Fluid Mechanics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种基于示范数据强化学习技术的水下航行器自主上浮控制方法,属于海洋设备控制技术领域,本发明基于深度强化学习中“演员‑评论家”算法框架,提出一种基于结合示范数据深度强化学习技术的水下航行器自主上浮控制方法。本发明基于DDPG算法,实现对连续动作空间水下航行器的上浮控制,并且在训练过程中使用示范数据,加速算法的收敛,同时对算法框架中的演员网络进行延迟更新,有效消除强化学习算法中存在的过估计问题。

Description

一种基于示范数据强化学习技术的水下航行器自主上浮控制 方法
技术领域
本发明涉及一种基于示范数据强化学习技术的水下航行器自主上浮控制方法,属于海洋设备控制技术领域。
背景技术
水下航行器是一种机动灵活、可操纵性强、成本较低、搭载方便的海洋装备,越来越广泛的被应用于海底地形地貌的测绘、海洋资源的勘查、海底管道铺设和维护、海洋环境监测等领域。随着陆地资源的日益匮乏,海洋逐渐成为了各国极为重要的战略资源基地,因此,海洋装备技术的研发受到越来越多的关注。水下航行器因其独特的优势、不可替代的作用以及广阔的应用前景,其发展得到了高度的重视和支持。
然而,水下航行器工作在复杂、未知的海洋环境中如果遭遇自身系统故障、水下强干扰等状况,如若不能及时自主上浮,势必会造成水下航行器的损毁丢失,导致不菲的经济损失及珍贵的科研数据的丢失。2005年2月16日,英国“Autosub-2”号水下航行器在执行某项冰下探测任务时丢失在南极冰下。2010年3月5日,美国“ABE”号水下航行器丢失在智利附近海域。2014年5月10日,美国“Nereus”号在新西兰东北的克马德克海沟9900m深度执行一项科考任务时失联(张同伟,秦升杰,唐嘉陵等.典型ROV/AUV在深海科学考察中的丢失过程及原因[J].船舶工程,2018(6):17.;STRUTT J E.Report of the inquiry into the lossof Autosub2 under the Fimbulisen[J].2006.)。由此可见,为了增强水下航行器的在海洋复杂干扰环境下的适应能力、提升水下航行器自主航行的可靠性,开展针对水下航行器的自主上浮控制算法的研究是十分必要的。
然而水下航行器的自主应急上浮控制问题有很多困难点。现有的线性控制器,例如比例积分微分(PID)控制器,对于具有复杂非线性动力学特性的系统(如水下航行器),很难获得良好的性能。此外,即使对于非线性控制器,由于在真实环境中难以获得准确的水下航行器动态模型及环境模型,因此也难以获得令人满意的控制效果(Hui Wu et al.,“Depth Control of Model-Free AUVs via Reinforcement Learning”,IEEETransactions on Systems,Man,and Cybernetics:Systems,Vol.49,pp.2499-2510,Dec.2019)。此外,复杂的海底环境可能会受到洋流的干扰,以及可能存在于水中或海面的漂浮障碍物。所以需要一种可以不依赖于任务模型且能够自学习的控制算法来解决上述问题。
强化学习(Reinforcement Learning,RL)是一种自学习的算法框架,可无模型的马尔可夫决策过程(Markov decision process,MDP)问题。RL的基本思想是构造一个与任务环境不断交互的智能体,以获得惩罚或奖励信号,最后通过最大化累积奖励来获得解决任务的最优策略。目前,RL已成功应用于工业制造、机器人控制、优化和调度等领域。深度学习(Deep Learning,DL)已在图像分析、语音识别、自然语言处理等领域取得了瞩目成就。其基本思想是通过多层网络结构和非线性变换,组合低层特征,形成抽象、易区分的高层表示,侧重于对事物的感知和表达。深度强化学习(Deep Reinforcement Learning,DRL)成功地将两者结合,是端对端的感知与控制系统。目前DRL技术在游戏博弈、机器人控制、参数优化、机器视觉等领域中得到了广泛的应用,并被认为是迈向通用人工智的重要途径。
现有的研究及发明专利中,虽然存在使用强化学习算法框架来进行水下航行器控制的思路,但也存在一些明显缺陷:首先,一些方法是基于强化学习中的Q-learning算法,这类算法只适用于动作空间是离散的情况,不符合水下航行器在实际使用过程中执行机构连续变化的情况(Q.L.Zhang et al.,“Deep Interactive Reinforcement Learning forPath Following of Autonomous Underwater Vehicle”,IEEE ACCESS,vol.8,pp.24258-24268,Jan.2020);第二,包含Q函数估计的强化学习算法存在对累计奖励的过估计问题;第三,现有的研究多对水下航行器的运动空间进行了二维简化,大大缩减了本应该考虑的动力学参数,而实际的水下航行器运动在三维空间,在这样的状态空间下,传统的强化学习算法会难以收敛;最后,基于强化学习的运动控制方法在训练过程初期存在的随机性会给被控对象带来很大风险,而将示范数据融入训练过程可以很好的解决该问题。
发明内容
针对现有技术的不足,为了解决水下航行器自主应急上浮控制问题,并且针对以上背景及现存方法中存在的诸多难点和不足,本发明基于深度强化学习中“演员-评论家”算法框架,提出一种基于结合示范数据深度强化学习技术的水下航行器自主上浮控制方法。本方法的主要特征在于:1.基于DDPG算法,实现对连续动作空间水下航行器的上浮控制,并且在训练过程中使用示范数据,加速算法的收敛,如图1所示。2.对算法框架中的演员网络进行延迟更新,有效消除强化学习算法中存在的过估计问题。
本发明的技术方案如下:
一种基于示范数据强化学习技术的水下航行器自主上浮控制方法,包括步骤如下:
1、构建仿真环境;
使用python语言编写水下航行器仿真环境,所述仿真环境包括任务环境部分、水下航行器部分、DRL算法所需参数部分;
所述任务环境部分包括设计固定在地理原点的E-ξηζ坐标系、设置了三维地图尺寸的三维区域、上浮成功区域;以及提供了与后续DRL算法交互的step()函数;
水下航行器包括三个执行机构,分别为艉部推进器、艉部水平舵以及艉部垂直舵;
所述水下航行器部分包括水下航行器六自由度动力学模型、四阶龙格库塔法解算水下航行器动力学模型;
优选的,步骤1中,所述水下航行器六自由度动力学模型的构建为:对水下航行器进行六自由度动力学建模,可根据固定坐标系E-ξηζ下的水下航行器坐标信息{ξ,η,ζ}、姿态角信息
Figure BDA0002969872800000031
以及在水下航行器上随其运动、以其重心为原点O的O-xyz坐标系下的水下航行器线速度信息{u,v,w}、角速度信息{p,q,r},完整表示水下航行器的运动状态,其中,ξ,η,ζ为固定坐标系E-ξηζ下的三维坐标值;ψ,
Figure BDA0002969872800000032
θ为固定坐标系E-ξηζ绕三个坐标轴旋转的姿态角角度:艏向角ψ、横滚角
Figure BDA0002969872800000033
以及俯仰角θ,u,v,w为水下航行器AUV在O-xyz坐标系下沿三个坐标轴运动的线速度值,p,q,r为O-xyz坐标系下绕三个坐标轴旋转的角速度。
AUV智能体输出t时刻的推进器信息和水平舵及垂直舵信息,由水下航行器六自由度动力学模型和四阶龙格库塔法解算水下航行器动力学模型获得t+1时刻的水下航行器运动状态;推进器信息为水下航行器AUV推进器输出的力的大小,水平舵及垂直舵信息为两个舵的舵角偏转值;
进一步优选的,四阶龙格库塔法解算水下航行器动力学模型包括四阶龙格库塔法计算,为计算机求解微分方程的数学方法,四阶龙格库塔法简单示例说明如下:
h=0.1s%定义的时间微分
k1=f(u);%u为水下航行器的当前时刻状态向量,f(u)为水下航行器的动力学方程
k2=f(u+0.5*h*k1);
k3=f(u+0.5*h*k2);
k4=f(u+h*k3);
其中,k1,k2,k3,k4表示的是输出变量的一阶倒数,即在一点处的微分,斜率;
u=u+(h/6)*(k1+2*k2+2*k3+k4);%得到新一时刻的系统状态向量。
所述DRL算法所需参数部分结合任务环境及实际水下航行器特性,进行了包括对奖励函数r、状态空间S、动作空间A的定义;
奖励函数的定义:
其中根据上浮任务的设定,定义转移奖励函数为上一时刻水下航行器到水面的距离与此时刻水下航行器到水面距离的差值,如式(1):
rtrans=10*α*(dold-dnew) (1)
其中,dold表示水下航行器上一时刻水下航行器与水面的距离,dnew表示水下航行器当前时刻水下航行器与水面的距离,rtrans为转移奖励函数;
而考虑紧急自主上浮的时间限制,设置时间惩罚项为:
Figure BDA0002969872800000041
当所耗费时间超出500个时间步时,触发任务结束;其中α,β为一个0到1之间的正自然数,以调节奖励权重;
另外进行了地图边界限制,当水下航行器碰到地图边界时,给予一个较大的惩罚:
Figure BDA0002969872800000042
综合起来,奖励函数被设定为:
r=rtrans+rtime+rmap (4)
状态空间S的具体组成如下:设定水下航行器对任务环境的观察量包括以下各分量:一、水下航行器与水面的距离;二、自身的各姿态角的角度;三、推进器输出的力;四、水平舵和垂直舵的偏转角度;五、设置水下航行器上的声呐对周围障碍物的测距信息;通过归一化处理将各观察分量放缩到[0,1]的范围内,以协调不同数值尺度的观察量对神经网络反向传播的影响,于是状态空间可相应定义为S={obs1,obs2,..,obsn},n为分量的数量;
进一步优选的,自身的各姿态角的角度包括艏向角ψ、俯仰角θ,水下航行器上的声呐设有四个;则,obsi分别为:与水面的实时距离、艏向角ψ、俯仰角θ、推进器的实时输出动力大小、水平舵角以及垂直舵角、四个用于模拟感知周围障碍物距离的声呐分量,共10个观察分量。
进一步优选的,归一化处理的处理方式如式(5)所示:
Figure BDA0002969872800000043
通过归一化处理将各观察分量放缩到[0,1]的范围内,以协调不同数值尺度的观察量对神经网络反向传播的影响。
定义动作空间A,仿真环境中使用的水下航行器为一个运动在三维空间下、具有六个自由度,但只有三个执行机构的欠驱动水下航行器(所述欠驱动为控制领域中术语,指系统的独立控制变量个数小于系统自由度个数的一类非线性系统),三个执行机构分别为艉部推进器、艉部水平舵以及艉部垂直舵,通过控制推进器输出力的大小、两组舵面的偏转角度来对水下航行器的运动进行控制,因此定义动作空间为A={F,Dθ,Dψ},其中,F为推进器输出力的大小,Dθ,Dψ为水平舵以及垂直舵的偏转角度。
2、进行上浮策略训练,具体步骤如下:
(1)初始化阶段
(1-1)设定神经网络包括评估网络和目标网络,评估网络中包括演员网络和评论家网络,目标网络中包括演员网络和评论家网络;随机初始化各神经网络的网络参数;
评估演员网络参数θπ、目标演员网络参数θπ′;评估评论家网络参数θQ、目标评论家网络参数θQ′;评估演员网络的输出值为π(s|θπ),目标演员网络的输出为π′(s|θπ′),评估评论家网络输出为Q(s,a|θQ),目标评论家网络的输出为Q′(s,a|θQ′)。
优选的,演员网络及评论家网络的网络结构如图5所示,演员网络包括观测量输入层、隐藏层、动作输出层,评论家网络包括状态动作输入层、隐藏层、Q(s,a)输出层;其隐藏层均为128个神经元;
(1-2)初始化训练过程相关超参数:目标网络软替代更新频率参数;经验回放缓存空间尺寸;使用示范数据进行预训练的次数;每个时间步从经验回放缓存空间采样的转移过程条数,评估演员网络延迟更新频率,奖励折损率;
优选的,步骤(1-2)初始化训练过程相关超参数:目标网络软替代更新频率参数τ=5*10-3;经验回放缓存空间尺寸M=104;使用示范数据进行预训练的次数k=103;每个时间步从经验回放缓存空间采样的转移过程条数batch=128,评估演员网络延迟更新频率τπ=2,奖励折损率γ=0.99。
(2)预训练阶段:
(2-1)将N条完整使水下航行器在仿真环境中成功上浮的episode作为示范数据加载到经验回放缓存空间,N为任意正整数,并永久保存(后续正式训练过程中,与任务环境交互得到的转移过程会随着经验回放缓存的更新而被更替);这些条episode中各单步转移过程以(st-1,at,rt,st,done)的形式存储,其中st-1为上一时刻状态、at为当前时刻采取的动作、rt为当前时刻获得的奖励值、st为当前时刻状态、done为当时刻是否触发任务终止条件的标志位;优选的,步骤(2-1)中,N=10。可以选取任意正整数条,但为了体现方法的优越性,不需要过多的episode便可以使算法展现出良好的特性。
(2-2)经验回放缓存中的转移过程(无论来自示范数据还是来自后续与任务环境的实际交互)在接下来训练中被采样的概率正比于其优先级pi,被采样的概率计算方式为:
Figure BDA0002969872800000061
其中,ρ为调节优先级影响大小的指数因子,优选的,所举例的仿真中设置此值为0.3,这样设置原因是经过大量实验效果较好;k为经验回放缓存中已有的转移过程的数目;
而优先级pi的确定方式为:
Figure BDA0002969872800000062
其中,λ3为调节贡献度的权重值,优选的,仿真中设置为1.0;Q(si,aiQ)为评估评论家网络对某第i个状态-动作对的输出值;
Figure BDA0002969872800000063
为对a求取梯度,δi为此转移过程与上一转移过程的时序误差:
δi=r+γmaxa′Q(s′,a′|θQ′)-Q(s,a|θ′) (8)
其中,r为前文的奖励函数值;γ为奖励折损因子,优选的,举例的仿真中设置该值为0.99;Q(s′,a′|θQ′)为目标评论家网络根据下一时刻状态-动作对(s′,a′)的输出值;Q(s,a|θ′)为目标评论家网络根据当前时刻状态-动作对(s,a)的输出值;maxa′为取最大值数学符号,符号中有a′为该Q值最大即意味着动作值a的价值最大;
∈为一个较小的正常数,增加来自示范数据的转移过程被采样的概率,以确保采样过程具有一定随机性,优选的,举例的仿真实验中设置此值为0.1。
(2-3)进行预训练:使用加载了示范数据的经验回放缓存开始进行npre步预训练,npre的值应至少大于一个专家episode中的转移过程数目,并应在数量级上小于总仿真步数,优选的,npre=1000,选取当前值较为合适。在预训练的过程中,智能体并不与任务环境进行交互,仅使用从此时经验回放缓存每个时间步采样得到的batch条转移过程学习(即更新网络参数);在学习过程中,评估评论家网络及评估演员网络的loss函数被设计为:
Figure BDA0002969872800000064
Figure BDA0002969872800000065
其中,L1Q)为单步转移过程(即时间步t-1到时间步t的转移)的loss函数,其计算方式为单步累计奖励与评估评论家网络输出值的差的平方的期望值,具体为:
L1Q)=E[r+γQ′(s′,π′(s′|θπ′)|θQ′)-Q(s,a|θQ)]2 (11)
其中,r为前文的奖励函数值;γ为奖励折损因子,优选的,举例的仿真中设置该值为0.99;Q′(s′,π′(s′|θπ′)|θQ′)为目标评论家网络根据目标演员网络的输出而做出的输出,π′(s′|θπ′)即为目标演员网络根据下一时刻状态s′做出的输出;Q(s,a|θQ)为评估评论家网络根据智能体在当前时刻状态-动作对(s,a)的输出,
Figure BDA0002969872800000071
为梯度算子,即对评估演员网络的网络参数求取梯度;
本发明中学习多步转移过程之间的信息LnQ),计算n步转移过程
Figure BDA0002969872800000072
这里的n步转移过程是根据(2-1)中的单步存储转移过程推算出来的中间存储方式,不需要统一;
优选的,跨度过大的转移过程之间的关系不大,n通常设置为3~5。
loss函数的方式为n步转移奖励与评估评论家网络的差值的平方:
Figure BDA0002969872800000073
式(12)和式(11)中的内容是相似的,i在这里表示从当前转移过程所在时刻算起的第i个时刻的转移过程,s′n-1为当前转移过程的状态的后n步的状态;
λ1、λ2为调节单步、n步转移过程影响loss函数的比重,
Figure BDA0002969872800000074
为评估演员网络输出的梯度与评估评论家网络的乘积,而
Figure BDA0002969872800000075
Figure BDA0002969872800000076
为两类网络的L2正则化项,计算loss函数时加入其中以防止网络在学习过程中发生过拟合的情况;
对目标演员网络、目标评论家网络的更新方式为:
θπ′=τθπ′+(1-τ)θπ′ (13)
θQ′=τθQ′+(1-τ)θQ′ (14)
评估评论家网络及评估演员网络使用式(9)、(10)中设计的loss函数进行网络参数更新,对目标演员网络、目标评论家网络的更新方式为采用式(13)、(14)中的软更新方式,其中,θπ′为目标演员网络参数,θQ′为目标评论家网络参数,τ为软更新因子,优选的,仿真实验中设置为5*10-3
(3)正式训练阶段:
(3-1)、经过npre步的预训练,AUV智能体开始控制水下航行器与仿真环境交互,每个episode的开始时,水下航行器以上浮成功区域(水面2米)以下随机地某个起点开始运动,且设定其艏向角ψ也为完全随机;
(3-2)、水下航行器将当前观测环境得来的状态空间S的一条向量输入到评估演员网络中,并根据网络的输出及噪声得到动作at=π(st-1π)+nt,其中nt为加入的高斯噪声,并得到该状态下任务环境对水下航行器的奖励函数值r,将每个时间步与任务环境交互得到的转移过程(st-1,at,rt,st)存放在经验回放缓存中;
(3-3)、每个时间步后,按照公式(6)计算得到的采样概率随机从水下航行器真实交互得到的转移过程与先前加载的示范数据中采样,并将得到的batch条混合数据,评估评论家网络依照与步骤(2-3)中评估评论家网络同样的方式进行网络参数的更新;当训练总步数符合评估演员网络频率才依照(2-3)中评估演员网络同样的方式进行网络参数的更新;所述评估演员网络频率是指人为自定义的一个网络更新频率,属于网络训练环节的超参数,优选的,举例仿真中设定为5,可以为别的值,但仿真结果表明3~5效果最好。
(3-4)、循环(3-2)、(3-3)不断训练,直至达到预设的仿真步数。优选的,本发明的举例仿真中设定总仿真步数为2*105步,通过查看每个episode的奖励收敛情况及水下航行器完成环境任务的成功次数判断算法的控制性能。
在开始仿真后的某时刻,输入水下航行器可以执行的推进器力大小以及艉舵的角度值动作,返回水下航行器对任务环境的观察量、任务环境给与水下航行器的奖励惩罚信号、以及判断任务结束的完成信号。
本发明的有益效果在于:
利用本发明所述的方法,可记录仿真环境中水下航行器重心的实时坐标,得到的成功上浮的轨迹表现出水下航行器智能体经过训练后的自主性,且查看其训练过程中各episode得到的任务环境奖励,基于结合示范数据的深度确定性梯度下降强化学习水下航行器自主上浮控制算法具有明显较快的收敛性,及收敛后的稳定性,如图8所示。
附图说明
图1为结合示范数据深度强化学习算法示意图;
图2为水下航行器仿真环境的搭建图;
图3为水下航行器相关坐标系及运动状态信息示意图;
图4为基于DRL的水下航行器控制图;
图5-1为演员网络结构图;
图5-2为评论家网络结构图;
图6为控制算法示意图;
图7-1为水下航行器利用示范数据训练、在第200轮上浮任务训练中产生的自主上浮轨迹图;
图7-2为水下航行器利用示范数据训练、在第500轮上浮任务训练中产生的自主上浮轨迹图;
图7-3为水下航行器利用示范数据训练、在第800轮上浮任务训练中产生的自主上浮轨迹图;
图8为奖励曲线图,其中横轴为仿真的轮数(AUV从起点出发到任务结束算作一轮),纵轴为该轮获得的总奖励函数值。
具体实施方式
下面通过实施例并结合附图对本发明做进一步说明,但不限于此。
实施例1:
一种基于示范数据强化学习技术的水下航行器自主上浮控制方法,本发明的实施过程分为仿真环境构建阶段和上浮策略训练两个部分:
1、仿真环境构建阶段,具体步骤如下:
使用python语言编写水下航行器仿真环境,所述仿真环境包括任务环境部分、水下航行器部分、DRL算法所需参数部分,如图2所示;
所述任务环境部分包括设计固定在地理原点的E-ξηζ坐标系、设置了三维地图尺寸的三维区域、上浮成功区域,以渤海湾的海深为举例,三维地图尺寸设定为50米*50米*50米的三维区域、上浮成功区域设定为距离水面的2米以内;以及提供了与后续DRL算法交互的step()函数;
根据水下航行器动力学特性,对一个长度为2.38米、直径为0.32米、重量为167千克的流线型水下航行器进行六自由度动力学建模。可根据固定坐标系E-ξηζ下的水下航行器坐标信息{ξ,η,ζ}、姿态角信息
Figure BDA0002969872800000091
以及在水下航行器上随其运动、以其重心为原点O的O-xyz坐标系下的水下航行器线速度信息{u,v,w}、角速度信息{p,q,r},完整表示水下航行器的运动状态,其中,ξ,η,ζ为固定坐标系E-ξηζ下的三维坐标值;如图3所示,其中,ξ,η,ζ为固定坐标系E-ξηζ下的三维坐标值,ψ,
Figure BDA0002969872800000092
θ为固定坐标系E-ξηζ绕三个坐标轴旋转的姿态角角度:艏向角ψ、横滚角
Figure BDA0002969872800000093
以及俯仰角θ,u,v,w为水下航行器AUV在O-xyz坐标系下沿三个坐标轴运动的线速度值,p,q,r为O-xyz坐标系下绕三个坐标轴旋转的角速度。
AUV智能体输出t时刻的推进器信息和水平舵及垂直舵信息,由水下航行器六自由度动力学模型和四阶龙格库塔法解算水下航行器动力学模型获得t+1时刻的水下航行器运动状态;推进器信息为水下航行器AUV推进器输出的力的大小,水平舵及垂直舵信息为两个舵的舵角偏转值;
四阶龙格库塔法解算水下航行器动力学模型包括四阶龙格库塔法计算,为计算机求解微分方程的数学方法,四阶龙格库塔法简单示例说明如下:
h=0.1s%定义的时间微分
k1=f(u);%u为水下航行器的当前时刻状态向量,f(u)为水下航行器的动力学方程
k2=f(u+0.5*h*k1);
k3=f(u+0.5*h*k2);
k4=f(u+h*k3);
其中,k1,k2,k3,k4表示的是输出变量的一阶倒数,即在一点处的微分,斜率;
u=u+(h/6)*(k1+2*k2+2*k3+k4);%得到新一时刻的系统状态向量。
DRL算法所需参数部分结合任务环境及实际水下航行器特性,进行了DRL算法框架所需的奖励函数r、状态空间S、动作空间A的定义。
奖励函数的定义:
其中根据上浮任务的设定,定义转移奖励函数为上一时刻水下航行器到水面的距离与此时刻水下航行器到水面距离的差值,如式(1):
rtrans=10*α*(dold-dnew) (1)
其中,dold表示水下航行器上一时刻水下航行器与水面的距离,dnew表示水下航行器当前时刻水下航行器与水面的距离,rtrans为转移奖励函数;
而考虑紧急自主上浮的时间限制,设置时间惩罚项为:
Figure BDA0002969872800000101
当所耗费时间超出500个时间步时,触发任务结束;其中α,β为一个0到1之间的正自然数,以调节奖励权重;
另外进行了地图边界限制,当水下航行器碰到地图边界时,给予一个较大的惩罚:
Figure BDA0002969872800000102
综合起来,奖励函数被设定为:
r=rtrans+rtime+rmap (4)
状态空间S的具体组成如下。水下航行器对任务环境的观察量的各分量被设定为:一、水下航行器与水面的距离;二、自身的各姿态角的角度;三、推进器输出的力;四、水平舵和垂直舵的偏转角度;五、设置水下航行器上的声呐对周围障碍物的测距信息(仿真中设定水下航行器对周围环境的探测半径设置为5米,用以感知地图边界)。通过归一化处理将各观察分量放缩到[0,1]的范围内,以协调不同数值尺度的观察量对神经网络反向传播的影响。于是状态空间可相应定义为S={obs1,obs2,..,obsn},n为分量的数量。
自身的各姿态角的角度包括艏向角ψ、俯仰角θ,水下航行器上的声呐设有四个;则,obsi分别为:与水面的实时距离、艏向角ψ、俯仰角θ、推进器的实时输出动力大小、水平舵角以及垂直舵角、四个用于模拟感知周围障碍物距离的声呐分量,共10个观察分量。
归一化处理的处理方式如式(5)所示:
Figure BDA0002969872800000111
通过归一化处理将各观察分量放缩到[0,1]的范围内,以协调不同数值尺度的观察量对神经网络反向传播的影响。
动作空间A的定义。仿真环境中使用的水下航行器为一个运动在三维空间下、具有六个自由度,但只有三个执行机构的欠驱动水下航行器(所述欠驱动为控制领域中术语,指系统的独立控制变量个数小于系统自由度个数的一类非线性系统),三个执行机构分别为艉部推进器、艉部水平舵以及艉部垂直舵,通过控制推进器输出力的大小、两组舵面的偏转角度来对水下航行器的运动进行控制,因此定义动作空间为A={F,Dθ,Dψ},其中,F为推进器输出力的大小,Dθ,Dψ为水平舵以及垂直舵的偏转角度。
2、进行上浮策略训练,该控制方法整体流程如图4所示,其中的控制算法如图6所示意,具体步骤如下:
(1)初始化阶段
(1-1)设定神经网络包括评估网络和目标网络,评估网络中包括演员网络和评论家网络,目标网络中包括演员网络和评论家网络;随机初始化各神经网络的网络参数;
评估演员网络参数θπ、目标演员网络参数θπ′;评估评论家网络参数θQ、目标评论家网络参数θQ′;评估演员网络的输出值为π(s|θπ),目标演员网络的输出为π′(s|θπ′),评估评论家网络输出为Q(s,a|θQ),目标评论家网络的输出为Q′(s,a|θQ′)。
演员网络及评论家网络的网络结构如图5所示,演员网络包括观测量输入层、隐藏层、动作输出层,评论家网络包括状态动作输入层、隐藏层、Q(s,a)输出层;其隐藏层均为128个神经元;
(1-2)初始化训练过程相关超参数:目标网络软替代更新频率参数τ=5*10-3;经验回放缓存空间尺寸M=104;使用示范数据进行预训练的次数k=103;每个时间步从经验回放缓存空间采样的转移过程条数batch=128,评估演员网络延迟更新频率τπ=2,奖励折损率γ=0.99。
(2)预训练阶段:
(2-1)将N=10条完整使水下航行器在仿真环境中成功上浮的episode作为示范数据加载到经验回放缓存空间,并永久保存(后续正式训练过程中,与任务环境交互得到的转移过程会随着经验回放缓存的更新而被更替);这10条episode中各单步转移过程以(st-1,at,rt,st,done)的形式存储。其中st-1为上一时刻状态、at为当前时刻采取的动作、rt为当前时刻获得的奖励值、st为当前时刻状态、done为当时刻是否触发任务终止条件的标志位。(2-2)经验回放缓存中的转移过程在接下来训练中被采样的概率正比于其优先级pi,被采样的概率计算方式为:
Figure BDA0002969872800000121
其中,ρ为调节优先级影响大小的指数因子,所举例的仿真中设置此值为0.3,这样设置原因是经过大量实验效果较好;k为经验回放缓存中已有的转移过程的数目;
而优先级pi的确定方式为:
Figure BDA0002969872800000122
其中,λ3为调节贡献度的权重值,仿真中设置为1.0;Q(si,aiQ)为评估评论家网络对某第i个状态-动作对的输出值;
Figure BDA0002969872800000123
为对a求取梯度,δi为此转移过程与上一转移过程的时序误差:
δi=r+γmaxa′Q(s′,a′|θQ′)-Q(s,a|θ′) (8)
其中,r为前文的奖励函数值;γ为奖励折损因子,举例的仿真中设置该值为0.99;Q(s′,a′|θQ′)为目标评论家网络根据下一时刻状态-动作对(s′,a′)的输出值;Q(s,a|θ′)为目标评论家网络根据当前时刻状态-动作对(s,a)的输出值;maxa′为取最大值数学符号,符号中有a′为该Q值最大即意味着动作值a的价值最大;
∈为一个较小的正常数,增加来自示范数据的转移过程被采样的概率,以确保采样过程具有一定随机性,举例的仿真实验中设置此值为0.1。
(2-3)进行预训练:使用加载了示范数据的经验回放缓存开始进行npre=1000步预训练。在预训练的过程中,智能体并不与任务环境进行交互,仅使用从此时经验回放缓存每个时间步采样得到的batch条转移过程学习(即更新网络参数)。
在学习过程中,评估评论家网络及评估演员网络的loss函数被设计为:
Figure BDA0002969872800000131
Figure BDA0002969872800000132
其中,L1Q)为单步转移过程(即时间步t-1到时间步t的转移)的loss函数,其计算方式为单步累计奖励与评估评论家网络输出值的差的平方的期望值,具体为:
L1Q)=E[r+γQ′(s′,π′(s′|θπ′)|θQ′)-Q(s,a|θQ)]2 (11)
其中,r为前文的奖励函数值;γ为奖励折损因子,举例的仿真中设置该值为0.99;Q′(s′,π′(s′|θπ′)|θQ′)为目标评论家网络根据目标演员网络的输出而做出的输出,π′(s′|θπ′)即为目标演员网络根据下一时刻状态s′做出的输出;Q(s,a|θQ)为评估评论家网络根据智能体在当前时刻状态-动作对(s,a)的输出,
Figure BDA0002969872800000133
为梯度算子,即对评估演员网络的网络参数求取梯度;
本发明中学习多步转移过程之间的信息LnQ),计算n步转移过程
Figure BDA0002969872800000134
这里的n步转移过程是根据(2-1)中的单步存储转移过程推算出来的中间存储方式,不需要统一;
跨度过大的转移过程之间的关系不大,n通常设置为3~5。
loss函数的方式为n步转移奖励与评估评论家网络的差值的平方:
Figure BDA0002969872800000135
式(12)和式(11)中的内容是相似的,i在这里表示从当前转移过程所在时刻算起的第i个时刻的转移过程,s′n-1为当前转移过程的状态的后n步的状态;
λ1、λ2为调节单步、n步转移过程影响loss函数的比重,
Figure BDA0002969872800000136
为评估演员网络输出的梯度与评估评论家网络的乘积,而
Figure BDA0002969872800000137
Figure BDA0002969872800000138
为两类网络的L2正则化项,计算loss函数时加入其中以防止网络在学习过程中发生过拟合的情况;
对目标演员网络、目标评论家网络的更新方式为:
θπ′=τθπ′+(1-τ)θπ′ (13)
θQ′=τθQ′+(1-τ)θQ′ (14)
评估评论家网络及评估演员网络使用式(9)、(10)中设计的loss函数进行网络参数更新,对目标演员网络、目标评论家网络的更新方式为采用式(13)、(14)中的软更新方式,其中,θπ′为目标演员网络参数,θQ′为目标评论家网络参数,τ为软更新因子,仿真实验中设置为5*10-3;(3)正式训练阶段:
(3-1)、经过npre=1000步的预训练,AUV智能体开始控制水下航行器与仿真任务环境交互。每个episode的开始时,水下航行器以水面2米以下随机地某个起点开始运动,且设定其艏向角ψ也为完全随机。
(3-2)、水下航行器将当前观测环境得来的状态空间S的一条向量输入到评估演员网络中,并根据网络的输出及噪声得到动作at=π(st-1π)+nt,其中nt为加入的高斯噪声,并得到该状态下任务环境对水下航行器的奖励值r。将每个时间步与任务环境交互得到的转移过程(st-1,at,rt,st)存放在经验回放缓存中。
(3-3)、每个时间步后,按照公式(6)计算得到的采样概率随机从水下航行器真实交互得到的转移过程与先前加载的示范数据中采样,并将得到的batch条混合数据,评估评论家网络依照与步骤(2-3)中评估评论家网络同样的方式进行网络参数的更新。当训练总步数符合评估演员网络频率才依照(2-3)中评估演员网络同样的方式进行网络参数的更新。所述评估演员网络频率是指人为自定义的一个网络更新频率,属于网络训练环节的超参数,举例仿真中设定为5,可以为别的值,但仿真结果表明3~5效果最好。
(3-4)、循环(3-2)、(3-3)不断训练,直至达到预设的仿真步数。本发明的举例仿真中设定总仿真步数为2*105步。通过查看每个episode的奖励收敛情况及水下航行器完成环境任务的成功次数判断算法的控制性能。
由图7-1至图7-3可知随着智能体训练,水下航行器的上浮轨迹越来越规则,体现出所做的无用动作越来越少,行动效率越来越高。
由图8奖励曲线图可知,智能体存在一定探索率,导致曲线有波动,但是均完成了上浮任务。
以上所述仅是对本发明的较佳实施方式而已,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施方式所做的任何简单修改,等同变化与修饰,均属于本发明技术方案的范围内。

Claims (10)

1.一种基于示范数据强化学习技术的水下航行器自主上浮控制方法,其特征在于,包括步骤如下:
1、构建仿真环境;
使用python语言编写水下航行器仿真环境,所述仿真环境包括任务环境部分、水下航行器部分、DRL算法所需参数部分;
所述任务环境部分包括设计固定在地理原点的E-ξηζ坐标系、设置了三维地图尺寸的三维区域、上浮成功区域;以及提供了与后续DRL算法交互的step()函数;
水下航行器包括三个执行机构,分别为艉部推进器、艉部水平舵以及艉部垂直舵;
所述水下航行器部分包括水下航行器六自由度动力学模型、四阶龙格库塔法解算水下航行器动力学模型;
所述DRL算法所需参数部分包括对奖励函数r、状态空间S、动作空间A的定义;
奖励函数的定义:
其中根据上浮任务的设定,定义转移奖励函数为上一时刻水下航行器到水面的距离与此时刻水下航行器到水面距离的差值,如式(1):
rtrans=10*α*(dold-dnew) (1)
其中,dold表示水下航行器上一时刻水下航行器与水面的距离,dnew表示水下航行器当前时刻水下航行器与水面的距离,rtrans为转移奖励函数;
设置时间惩罚项为:
Figure FDA0002969872790000011
当所耗费时间超出500个时间步时,触发任务结束;其中α,β为一个0到1之间的正自然数;
另外进行了地图边界限制,当水下航行器碰到地图边界时,给予一个较大的惩罚:
Figure FDA0002969872790000012
综合起来,奖励函数被设定为:
r=rtrans+rtime+rmap (4)
状态空间S的组成如下:设定水下航行器对任务环境的观察量包括以下各分量:一、水下航行器与水面的距离;二、自身的各姿态角的角度;三、推进器输出的力;四、水平舵和垂直舵的偏转角度;五、设置水下航行器上的声呐对周围障碍物的测距信息;通过归一化处理将各观察分量放缩到[0,1]的范围内,状态空间相应定义为S={obs1,obs2,..,obsn},n为分量的数量;
定义动作空间A,仿真环境中使用的水下航行器为一个运动在三维空间下、具有六个自由度,但只有三个执行机构的欠驱动水下航行器,三个执行机构分别为艉部推进器、艉部水平舵以及艉部垂直舵,通过控制推进器输出力的大小、两组舵面的偏转角度来对水下航行器的运动进行控制,因此定义动作空间为A={F,Dθ,Dψ},其中,F为推进器输出力的大小,Dθ,Dψ为水平舵以及垂直舵的偏转角度;
2、进行上浮策略训练,具体步骤如下:
(1)初始化阶段
(1-1)设定神经网络包括评估网络和目标网络,评估网络中包括演员网络和评论家网络,目标网络中包括演员网络和评论家网络;随机初始化各神经网络的网络参数;
评估演员网络参数θπ、目标演员网络参数θπ′;评估评论家网络参数θQ、目标评论家网络参数θQ′;评估演员网络的输出值为π(s|θπ),目标演员网络的输出为π′(s|θπ′),评估评论家网络输出为Q(s,a|θQ),目标评论家网络的输出为Q′(s,a|θQ′);
(1-2)初始化训练过程相关超参数:目标网络软替代更新频率参数;经验回放缓存空间尺寸;使用示范数据进行预训练的次数;每个时间步从经验回放缓存空间采样的转移过程条数,评估演员网络延迟更新频率,奖励折损率;
(2)预训练阶段:
(2-1)将N条完整使水下航行器在仿真环境中成功上浮的episode作为示范数据加载到经验回放缓存空间,N为任意正整数,并永久保存;这些条episode中各单步转移过程以(st-1,at,rt,st,done)的形式存储,其中st-1为上一时刻状态、at为当前时刻采取的动作、rt为当前时刻获得的奖励值、st为当前时刻状态、done为当时刻是否触发任务终止条件的标志位;
(2-2)经验回放缓存中的转移过程在接下来训练中被采样的概率正比于其优先级pi,被采样的概率计算方式为:
Figure FDA0002969872790000021
其中,ρ为调节优先级影响大小的指数因子,k为经验回放缓存中已有的转移过程的数目;而优先级pi的确定方式为:
Figure FDA0002969872790000031
其中,λ3为调节贡献度的权重值;Q(si,aiQ)为评估评论家网络对某第i个状态-动作对的输出值;
Figure FDA0002969872790000032
为对a求取梯度,δi为此转移过程与上一转移过程的时序误差:
δi=r+γmaxa′Q(s′,a′|θQ′)-Q(s,a|θ′) (8)
其中,r为前文的奖励函数值;γ为奖励折损因子,Q(s′,a′|θQ′)为目标评论家网络根据下一时刻状态-动作对(s′,a′)的输出值;Q(s,a|θ′)为目标评论家网络根据当前时刻状态-动作对(s,a)的输出值;∈为一个正常数;
(2-3)进行预训练:使用加载了示范数据的经验回放缓存开始进行npre步预训练,npre的值大于一个专家episode中的转移过程数目,并应在数量级上小于总仿真步数,在预训练的过程中,智能体并不与任务环境进行交互,仅使用从此时经验回放缓存每个时间步采样得到的batch条转移过程学习;
在学习过程中,评估评论家网络及评估演员网络的loss函数被设计为:
Figure FDA0002969872790000033
Figure FDA0002969872790000034
其中,L1Q)为单步转移过程的loss函数,其计算方式为单步累计奖励与评估评论家网络输出值的差的平方的期望值,具体为:
L1Q)=E[r+γQ′(s′,π′(s′|θπ′)|θQ′)-Q(s,a|θQ)]2 (11)
其中,r为前文的奖励函数值;γ为奖励折损因子;Q′(s′,π′(s′|θπ′)|θQ′)为目标评论家网络根据目标演员网络的输出而做出的输出,π′(s′|θπ′)即为目标演员网络根据下一时刻状态s′做出的输出;Q(s,a|θQ)为评估评论家网络根据智能体在当前时刻状态-动作对(s,a)的输出,
Figure FDA0002969872790000035
为梯度算子,即对评估演员网络的网络参数求取梯度;
本发明中学习多步转移过程之间的信息LnQ),计算n步转移过程
Figure FDA0002969872790000036
n为3~5;
loss函数的方式为n步转移奖励与评估评论家网络的差值的平方:
Figure FDA0002969872790000037
式(12)和式(11)中的内容是相似的,i在这里表示从当前转移过程所在时刻算起的第i个时刻的转移过程,s′n-1为当前转移过程的状态的后n步的状态;
λ1、λ2为调节单步、n步转移过程影响loss函数的比重,
Figure FDA0002969872790000041
为评估演员网络输出的梯度与评估评论家网络的乘积,而
Figure FDA0002969872790000042
Figure FDA0002969872790000045
为两类网络的L2正则化项;
对目标演员网络、目标评论家网络的更新方式为:
θπ′=τθπ′+(1-τ)θπ′ (13)
θQ′=τθQ′+(1-τ)θQ′ (14)
评估评论家网络及评估演员网络使用式(9)、(10)中设计的loss函数进行网络参数更新,对目标演员网络、目标评论家网络的更新方式为采用式(13)、(14)中的软更新方式,其中,θπ′为目标演员网络参数,θQ′为目标评论家网络参数,τ为软更新因子;
(3)正式训练阶段:
(3-1)、经过npre步的预训练,AUV智能体开始控制水下航行器与仿真环境交互,每个episode的开始时,水下航行器以上浮成功区域以下随机地某个起点开始运动,且设定其艏向角ψ也为完全随机;
(3-2)、水下航行器将当前观测环境得来的状态空间S的一条向量输入到评估演员网络中,并根据网络的输出及噪声得到动作at=π(st-1π)+nt,其中nt为加入的高斯噪声,并得到该状态下任务环境对水下航行器的奖励函数值r,将每个时间步与任务环境交互得到的转移过程(st-1,at,rt,st)存放在经验回放缓存中;
(3-3)、每个时间步后,按照公式(6)计算得到的采样概率随机从水下航行器真实交互得到的转移过程与先前加载的示范数据中采样,并将得到的batch条混合数据,评估评论家网络依照与步骤(2-3)中评估评论家网络同样的方式进行网络参数的更新;当训练总步数符合评估演员网络频率才依照(2-3)中评估演员网络同样的方式进行网络参数的更新;所述评估演员网络频率是指人为自定义的一个网络更新频率,属于网络训练环节的超参数;
(3-4)、循环(3-2)、(3-3)不断训练,直至达到预设的仿真步数,通过查看每个episode的奖励收敛情况及水下航行器完成环境任务的成功次数判断算法的控制性能。
2.根据权利要求1所述的基于示范数据强化学习技术的水下航行器自主上浮控制方法,其特征在于,步骤1中,所述水下航行器六自由度动力学模型的构建为:对水下航行器进行六自由度动力学建模,可根据固定坐标系E-ξηζ下的水下航行器坐标信息{ξ,η,ζ}、姿态角信息
Figure FDA0002969872790000044
以及在水下航行器上随其运动、以其重心为原点O的O-xyz坐标系下的水下航行器线速度信息{u,v,w}、角速度信息{p,q,r},完整表示水下航行器的运动状态,其中,ξ,η,ζ为固定坐标系E-ξηζ下的三维坐标值;ψ,
Figure FDA0002969872790000051
θ为固定坐标系E-ξηζ绕三个坐标轴旋转的姿态角角度:艏向角ψ、横滚角
Figure FDA0002969872790000052
以及俯仰角θ,u,v,w为水下航行器AUV在O-xyz坐标系下沿三个坐标轴运动的线速度值,p,q,r为O-xyz坐标系下绕三个坐标轴旋转的角速度;
AUV智能体输出t时刻的推进器信息和水平舵及垂直舵信息,由水下航行器六自由度动力学模型和四阶龙格库塔法解算水下航行器动力学模型获得t+1时刻的水下航行器运动状态;推进器信息为水下航行器AUV推进器输出的力的大小,水平舵及垂直舵信息为两个舵的舵角偏转值;
优选的,四阶龙格库塔法解算水下航行器动力学模型包括四阶龙格库塔法计算,为计算机求解微分方程的数学方法,四阶龙格库塔法示例说明如下:
h=0.1s%定义的时间微分
k1=f(u);%u为水下航行器的当前时刻状态向量,f(u)为水下航行器的动力学方程
k2=f(u+0.5*h*k1);
k3=f(u+0.5*h*k2);
k4=f(u+h*k3);
其中,k1,k2,k3,k4表示的是输出变量的一阶倒数,即在一点处的微分,斜率;
u=u+(h/6)*(k1+2*k2+2*k3+k4);%得到新一时刻的系统状态向量。
3.根据权利要求1所述的基于示范数据强化学习技术的水下航行器自主上浮控制方法,其特征在于,步骤1中,水下航行器对任务环境的观察量分量中,自身的各姿态角的角度包括艏向角ψ、俯仰角θ,水下航行器上的声呐设有四个;则,obsi分别为:与水面的实时距离、艏向角ψ、俯仰角θ、推进器的实时输出动力大小、水平舵角以及垂直舵角、四个用于模拟感知周围障碍物距离的声呐分量,共10个观察分量。
4.根据权利要求1所述的基于示范数据强化学习技术的水下航行器自主上浮控制方法,其特征在于,步骤1中,状态空间的归一化处理的处理方式如式(5)所示:
Figure FDA0002969872790000053
5.根据权利要求1所述的基于示范数据强化学习技术的水下航行器自主上浮控制方法,其特征在于,步骤(1-1)中,演员网络包括观测量输入层、隐藏层、动作输出层,评论家网络包括状态动作输入层、隐藏层、Q(s,a)输出层;其隐藏层均为128个神经元。
6.根据权利要求1所述的基于示范数据强化学习技术的水下航行器自主上浮控制方法,其特征在于,步骤(1-2)初始化训练过程相关超参数:目标网络软替代更新频率参数τ=5*10-3;经验回放缓存空间尺寸M=104;使用示范数据进行预训练的次数k=103;每个时间步从经验回放缓存空间采样的转移过程条数batch=128,评估演员网络延迟更新频率τπ=2,奖励折损率γ=0.99。
7.根据权利要求1所述的基于示范数据强化学习技术的水下航行器自主上浮控制方法,其特征在于,步骤(2-1)中,N=10。
8.根据权利要求1所述的基于示范数据强化学习技术的水下航行器自主上浮控制方法,其特征在于,步骤(2-2)中,式(6)中ρ为0.3,式(7)中λ3为1.0,∈为0.1,式(8)中γ为0.99。
9.根据权利要求1所述的基于示范数据强化学习技术的水下航行器自主上浮控制方法,其特征在于,步骤(2-3)中,预训练npre=1000;对目标演员网络、目标评论家网络的更新方式中,τ为5*10-3
10.根据权利要求1所述的基于示范数据强化学习技术的水下航行器自主上浮控制方法,其特征在于,步骤(3-3)中,所述评估演员网络频率设定为5;步骤(3-4)中,预设的仿真步数为2*105步。
CN202110260783.7A 2021-03-10 2021-03-10 一种基于示范数据强化学习技术的水下航行器自主上浮控制方法 Active CN113033118B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110260783.7A CN113033118B (zh) 2021-03-10 2021-03-10 一种基于示范数据强化学习技术的水下航行器自主上浮控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110260783.7A CN113033118B (zh) 2021-03-10 2021-03-10 一种基于示范数据强化学习技术的水下航行器自主上浮控制方法

Publications (2)

Publication Number Publication Date
CN113033118A true CN113033118A (zh) 2021-06-25
CN113033118B CN113033118B (zh) 2022-03-25

Family

ID=76469101

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110260783.7A Active CN113033118B (zh) 2021-03-10 2021-03-10 一种基于示范数据强化学习技术的水下航行器自主上浮控制方法

Country Status (1)

Country Link
CN (1) CN113033118B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113655778A (zh) * 2021-08-16 2021-11-16 江苏科技大学 一种基于时频能量的水下推进器故障诊断系统及诊断方法
CN114741886A (zh) * 2022-04-18 2022-07-12 中国人民解放军军事科学院战略评估咨询中心 一种基于贡献度评价的无人机集群多任务训练方法及系统
CN114967713A (zh) * 2022-07-28 2022-08-30 山东大学 基于强化学习的水下航行器浮力离散变化下的控制方法
CN118276449A (zh) * 2024-05-30 2024-07-02 吉林大学 一种自主水下机器人的洋流自适应控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019002465A1 (en) * 2017-06-28 2019-01-03 Deepmind Technologies Limited NEURONAL LEARNING ACTION SELECTION NETWORKS USING APPRENTICESHIP
CN110209152A (zh) * 2019-06-14 2019-09-06 哈尔滨工程大学 智能水下机器人垂直面路径跟随的深度强化学习控制方法
CN111966118A (zh) * 2020-08-14 2020-11-20 哈尔滨工程大学 一种rov推力分配与基于强化学习的运动控制方法
CN112179367A (zh) * 2020-09-25 2021-01-05 广东海洋大学 一种基于深度强化学习的智能体自主导航方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019002465A1 (en) * 2017-06-28 2019-01-03 Deepmind Technologies Limited NEURONAL LEARNING ACTION SELECTION NETWORKS USING APPRENTICESHIP
CN110209152A (zh) * 2019-06-14 2019-09-06 哈尔滨工程大学 智能水下机器人垂直面路径跟随的深度强化学习控制方法
CN111966118A (zh) * 2020-08-14 2020-11-20 哈尔滨工程大学 一种rov推力分配与基于强化学习的运动控制方法
CN112179367A (zh) * 2020-09-25 2021-01-05 广东海洋大学 一种基于深度强化学习的智能体自主导航方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
ANYAN JING等: "An Improved DDPG Reinforcement Learning Control of Underwater Gliders for Energy Optimization", 《2020 3RD INTERNATIONAL CONFERENCE ON UNMANNED SYSTEMS》 *
DIANRUI WANG等: "Adaptive DDPG Design-Based Sliding-Mode Control for Autonomous Underwater Vehicles at Different Speeds", 《2019 IEEE UNDERWATER TECHNOLOGY》 *
ENRICO ANDERLINI等: "Docking Control of an Autonomous Underwater Vehicle Using Reinforcement Learning", 《APPLIED SCIENCES》 *
张法帅等: "基于深度强化学习的无人艇航行控制", 《计测技术》 *
王丙琛等: "基于深度强化学习的自动驾驶车控制算法研究", 《郑州大学学报(工学版)》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113655778A (zh) * 2021-08-16 2021-11-16 江苏科技大学 一种基于时频能量的水下推进器故障诊断系统及诊断方法
CN113655778B (zh) * 2021-08-16 2024-03-26 江苏科技大学 一种基于时频能量的水下推进器故障诊断系统及诊断方法
CN114741886A (zh) * 2022-04-18 2022-07-12 中国人民解放军军事科学院战略评估咨询中心 一种基于贡献度评价的无人机集群多任务训练方法及系统
CN114741886B (zh) * 2022-04-18 2022-11-22 中国人民解放军军事科学院战略评估咨询中心 一种基于贡献度评价的无人机集群多任务训练方法及系统
CN114967713A (zh) * 2022-07-28 2022-08-30 山东大学 基于强化学习的水下航行器浮力离散变化下的控制方法
CN114967713B (zh) * 2022-07-28 2022-11-29 山东大学 基于强化学习的水下航行器浮力离散变化下的控制方法
CN118276449A (zh) * 2024-05-30 2024-07-02 吉林大学 一种自主水下机器人的洋流自适应控制方法

Also Published As

Publication number Publication date
CN113033118B (zh) 2022-03-25

Similar Documents

Publication Publication Date Title
CN113033118B (zh) 一种基于示范数据强化学习技术的水下航行器自主上浮控制方法
CN113033119B (zh) 一种基于双评论家强化学习技术的水下航行器目标区域上浮控制方法
CN108803321B (zh) 基于深度强化学习的自主水下航行器轨迹跟踪控制方法
CN110333739B (zh) 一种基于强化学习的auv行为规划及动作控制方法
CN111667513B (zh) 一种基于ddpg迁移学习的无人机机动目标跟踪方法
CN108820157B (zh) 一种基于强化学习的船舶智能避碰方法
CN113221449B (zh) 一种基于最优策略学习的船舶航迹实时预测方法及系统
CN113010963B (zh) 基于深度强化学习的变质量水下航行器避障方法及系统
CN109765929B (zh) 一种基于改进rnn的uuv实时避障规划方法
CN112180950B (zh) 一种基于强化学习的智能船舶自主避碰及路径规划方法
CN113741449B (zh) 一种面向海空协同观测任务的多智能体控制方法
Zhang et al. AUV path tracking with real-time obstacle avoidance via reinforcement learning under adaptive constraints
CN113534668B (zh) 基于最大熵的演员-评论家框架的auv运动规划方法
CN110472738A (zh) 一种基于深度强化学习的无人艇实时避障算法
CN113268074B (zh) 一种基于联合优化的无人机航迹规划方法
CN115016534A (zh) 一种基于记忆增强学习的无人机自主避障导航方法
CN117590867B (zh) 基于深度强化学习的水下自主航行器接驳控制方法和系统
CN114967721B (zh) 一种基于DQ-CapsNet的无人机自助路径规划和避障策略方法
CN116476863A (zh) 基于深度强化学习的自动驾驶横纵向一体化决策方法
CN117606490B (zh) 一种水下自主航行器协同搜索路径规划方法
CN117539241A (zh) 一种融合全局人工势场和局部强化学习的路径规划方法
CN116047886B (zh) 一种基于神经网络的管道潜航机器人控制方法及系统
CN114609925B (zh) 水下探索策略模型的训练方法及仿生机器鱼水下探索方法
CN116774712A (zh) 一种欠驱动auv三维环境下的实时动态避障方法
Jose et al. Navigating the Ocean with DRL: Path following for marine vessels

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