(12)发明专利申请
(10)申请公布号 CN 111813143 A(43)申请公布日 2020.10.23
(21)申请号 202010518047.2(22)申请日 2020.06.09
(71)申请人 天津大学
地址 300350 天津市津南区海河教育园雅
观路135号天津大学北洋园校区(72)发明人 王树新 王延辉 杨绍琼 张连洪
牛文栋 马伟 (74)专利代理机构 天津市北洋有限责任专利代
理事务所 12201
代理人 刘子文(51)Int.Cl.
G05D 1/10(2006.01)G05D 1/00(2006.01)
权利要求书2页 说明书4页 附图3页
(54)发明名称
一种基于强化学习的水下滑翔机智能控制系统及方法(57)摘要
本发明公开一种基于强化学习的水下滑翔机智能控制系统,包括状态转化单元、策略单元和评价单元,状态转化单元用于将获得的目标轨迹信息与滑翔机当前位置信息进行提取和计算并形成状态数组;所述策略单元由深度学习神经网络A构成,该深度学习神经网络A的输入为状态数组,输出为动作,用于轨迹跟踪的动作为[航向角、俯仰角、回油量];评价单元由深度学习神经网络B构成,深度学习神经网络B的输入为状态数组、奖励Rtemp,输出为值函数V;依据策略单元输出的动作[航向角、俯仰角、回油量],对于航向角与俯仰角,在滑翔机下潜后采用PID控制执行。
CN 111813143 ACN 111813143 A
权 利 要 求 书
1/2页
1.一种基于强化学习的水下滑翔机智能控制系统,其特征在于,包括状态转化单元、策略单元和评价单元,所述状态转化单元用于将获得的目标轨迹信息与滑翔机当前位置信息进行提取和计算并形成状态数组;
所述策略单元由深度学习神经网络A构成,该深度学习神经网络A的输入为状态数组,输出为动作,用于轨迹跟踪的动作为[航向角、俯仰角、回油量];当获得当前状态,策略单元输出动作,即智能决策的输出;对深度学习神经网络A的训练是采用其自身神经网络输出与评价单元输出的误差,训练过程是向着减少误差的方向更新;对训练好的深度学习神经网络A进行权值保存;
所述评价单元由深度学习神经网络B构成,深度学习神经网络B的输入为状态数组、奖励Rtemp,输出为值函数V;通过建立记忆库,采用批次学习法对深度学习神经网络B进行训练;
上述单元完成决策后,依据策略单元输出的动作[航向角、俯仰角、回油量],对于航向角与俯仰角,在滑翔机下潜后采用PID控制执行。
2.根据权利要求1所述一种基于强化学习的水下滑翔机智能控制系统,其特征在于,状态转化单元中,依据当前状态得到当前状态的奖励Rtemp=f(Rdis,Reny),即该奖励为轨迹保持的奖励与能耗的奖励的函数;Rdis表示水下滑翔机与被跟踪目标的距离值,水下滑翔机一个剖面结束后浮出水面,通过与卫星通讯获得自身位置与目标位置,计算可得该数值;Reny表示动作的能量消耗,可通过水下滑翔机电压值及能耗公式进行计算。
3.根据权利要求1所述一种基于强化学习的水下滑翔机智能控制系统,其特征在于,所述记忆库能够用于策略单元与评价单元的神经网络训练,考虑到海洋的时变性,记忆库中的记忆按照时间的不同赋予不同权重,距离当前时间越近的记忆权重越大,距离当前时间越远的记忆权重越小,记忆库满后用新的记忆覆盖旧的记忆。
4.一种水下滑翔机的轨迹跟踪控制方法,基于权利要求1所述的水下滑翔机智能控制系统,其特征在于,包括以下步骤:
(1)初始化参数:设定滑翔机的初始位置,获得目标的初始位置,同时设定学习率、学习批次、记忆库容量、神经网络权值赋随机初值;
(2)依据状态转化单元进行状态转化,形成当前状态S,采用策略单元中的深度学习神经网络A进行动作选择,输出动作A[航向角、俯仰角、回油量];
(3)滑翔机通过PID控制,执行步骤(2)输出的动作A,滑翔机下潜,执行V字剖面滑翔;(4)在步骤(3)动作结束后,滑翔机则浮出水面,获得当前位置信息O,及目标位置信息P;
(5)状态转化单元依据步骤(4)的位置信息,进行状态转化,形成状态数组S′;由状态数组S′计算奖励值Rdis,奖励值Rdis通过与g目标的计划距离换算;动作A及状态数组S′计算能耗值Reny,即将不同的动作值产生的能耗转化为能耗值Reny;计算综合即时奖励Rtemp=f(Rdis,Reny);
(6)评价单元中通过状态数组S由深度学习神经网络B计算V值,计算价值误差;在满足学习批次的条件下对深度学习神经网络B采用记忆库中的记忆进行训练;(7)依据评价单元的价值误差,对策略单元的深度学习神经网络A进行训练;(8)将S′状态设置为当前状态;
2
CN 111813143 A
权 利 要 求 书
2/2页
(9)是否结束轨迹跟踪的任务,如果“是”,则转入步骤(2),“否”则结束循环,输出轨迹曲线。
5.根据权利要求3所述一种水下滑翔机的轨迹跟踪控制方法,其特征在于,步骤(6)中的计算公式如下:
为V值在神经网络参数为θ下的梯度,π(a|s′)为在s′状态下选择的动作为a的一
个策略,Q(s′,a)为a状态下获得的s′状态的行为动作值Q;yi,t为在t时刻的第i个V的现实
值,r(si,t,ai,t)为在t时刻的第i个行为ai,t及获得的t时刻的第i个状态si,t下得到的奖励值Rtemp,
为在策略π下的任意策略φ中的t+1时刻的第i个状态si下的V估计值;L为价
为在策略π下的任意策略φ中的第i
值误差,是一个均方根误差,yi为第i个V现实值,个状态si下的V估计值。
3
CN 111813143 A
说 明 书
1/4页
一种基于强化学习的水下滑翔机智能控制系统及方法
技术领域
[0001]本发明涉及水下航行器领域,具体涉及一种基于强化学习的水下滑翔机(UG)自主学习和自主决策的控制技术,用于实现低能耗目标条件下的轨迹跟踪控制。背景技术
[0002]自主学习和自主决策的控制技术,借鉴人的学习和决策过程,可以使滑翔机在复杂的海洋环境中积累过往的控制经验,获取知识,不断完善自身的性能和适应性以达到设定的控制目标。近年来,随着机器学习理论的成熟和技术的应用,水下航行器领域也开展了智能控制方向的研究。强化学习是一类机器学习算法,通过与环境的不断交互,以状态和奖励作为反馈进行行为决策的学习方法,随着交互次数的提升,能够逐步改善行为,最终获得最优行为。
[0003]航行器的轨迹跟踪控制是指航行器从给定的初始状态出发,在跟踪控制器的控制下达到并跟踪空间中的一条由时间参数决定的轨迹,用于对动态目标点的跟踪。基于能耗目标的轨迹跟踪是一种多目标优化。
[0004]目前国内外学者在水下滑翔机的基于能耗的路径跟踪控制方面做了一定的工作,主要集中在通过分析滑翔机动力学与运动特性建立能耗模型进行滑翔机的行为控制和通过分析水下滑翔机的不同行为下的能耗数据得到行为与能耗的映射关系。以上控制需要人为监控,缺少自主决策的智能性。无法实现轨迹跟踪。发明内容
[0005]本发明的目的是为了克服现有技术中的不足,提供一种基于强化学习的水下滑翔机智能控制系统及方法,以实现水下滑翔机在能耗约束下的轨迹跟踪控制,一方面自主实现轨迹跟踪控制,另外一方面减少能源消耗,有利于提升水下滑翔机的航程。[0006]本发明的目的是通过以下技术方案实现的:
[0007]一种基于强化学习的水下滑翔机智能控制系统,包括状态转化单元、策略单元和评价单元,所述状态转化单元用于将获得的目标轨迹信息与滑翔机当前位置信息进行提取和计算并形成状态数组;
[0008]所述策略单元由深度学习神经网络A构成,该深度学习神经网络A的输入为状态数组,输出为动作,用于轨迹跟踪的动作为[航向角、俯仰角、回油量];当获得当前状态,策略单元输出动作,即智能决策的输出;对深度学习神经网络A的训练是采用其自身神经网络输出与评价单元输出的误差,训练过程是向着减少误差的方向更新;对训练好的深度学习神经网络A进行权值保存;
[0009]所述评价单元由深度学习神经网络B构成,深度学习神经网络B的输入为状态数组、奖励Rtemp,输出为值函数V;通过建立记忆库,采用批次学习法对深度学习神经网络B进行训练;
[0010]上述单元完成决策后,依据策略单元输出的动作[航向角、俯仰角、回油量],对于
4
CN 111813143 A
说 明 书
2/4页
航向角与俯仰角,在滑翔机下潜后采用PID控制执行。[0011]进一步的,状态转化单元中,依据当前状态得到当前状态的奖励Rtemp=f(Rdis,Reny),即该奖励为轨迹保持的奖励与能耗的奖励的函数;Rdis表示水下滑翔机与被跟踪目标的距离值,水下滑翔机一个剖面结束后浮出水面,通过与卫星通讯获得自身位置与目标位置,计算可得该数值;Reny表示动作的能量消耗,可通过水下滑翔机电压值及能耗公式进行计算。
[0012]进一步的,所述记忆库能够用于策略单元与评价单元的神经网络训练,考虑到海洋的时变性,记忆库中的记忆按照时间的不同赋予不同权重,距离当前时间越近的记忆权重越大,距离当前时间越远的记忆权重越小,记忆库满后用新的记忆覆盖旧的记忆。[0013]本发明还提供一种水下滑翔机的轨迹跟踪控制方法,包括以下步骤:[0014](1)初始化参数:设定滑翔机的初始位置,获得目标的初始位置,同时设定学习率、学习批次、记忆库容量、神经网络权值赋随机初值;[0015](2)依据状态转化单元进行状态转化,形成当前状态S,采用策略单元中的深度学习神经网络A进行动作选择,输出动作A[航向角、俯仰角、回油量];[0016](3)滑翔机通过PID控制,执行步骤(2)输出的动作A,滑翔机下潜,执行V字剖面滑翔;[0017](4)在步骤(3)动作结束后,滑翔机则浮出水面,获得当前位置信息O,及目标位置信息P;[0018](5)状态转化单元依据步骤(4)的位置信息,进行状态转化,形成状态数组S′;由状态数组S′计算奖励值Rdis,奖励值Rdis通过与g目标的计划距离换算;动作A及状态数组S′计算能耗值Reny,即将不同的动作值产生的能耗转化为能耗值Reny;计算综合即时奖励Rtemp=f(Rdis,Reny);[0019](6)评价单元中通过状态数组S由深度学习神经网络B计算V值,计算价值误差;[0020]在满足学习批次的条件下对深度学习神经网络B采用记忆库中的记忆进行训练;[0021](7)依据评价单元的价值误差,对策略单元的深度学习神经网络A进行训练;[0022](8)将S′状态设置为当前状态;[0023](9)是否结束轨迹跟踪的任务,如果“是”,则转入步骤(2),“否”则结束循环,输出轨迹曲线。
[0024]进一步的,步骤(6)中的计算公式如下:
[0025][0026][0027][0028]
为V值在神经网络参数为θ下的梯度,π(a|s′)为在s′状态下选择的动作为a
的一个策略,Q(s′,a)为a状态下获得的s′状态的行为动作值Q;yi,t为在t时刻的第i个V的现实值,r(si,t,ai,t)为在t时刻的第i个行为ai,t及获得的t时刻的第i个状态si,t下得到的奖励值Rtemp,
为在策略π下的任意策略φ中的t+1时刻的第i个状态si下的V估计值;L为
5
CN 111813143 A
说 明 书
3/4页
价值误差,是一个均方根误差,yi为第i个V现实值,为在策略π下的任意策略φ中的第
i个状态si下的V估计值。[0029]与现有技术相比,本发明的技术方案所带来的有益效果是:[0030]1.本发明系统有自主学习和自主决策能力:针对海洋的非结构化特性,水下滑翔机在水下运动过程中,获得状态与奖励的反馈,并以此汇集成记忆库,再通过强化学习算法对策略与评价的深度学习神经网络进行训练,获得网络权值,由此水下滑翔机在动作选择时可以选择奖励值最大的动作。因此具有自主学习和自主决策能力,即可以通过以往经验训练深度学习神经网络,并可选择奖励值最大的动作行为。
[0031]2.本发明方法可实现复杂海洋环境下低能耗约束下的轨迹跟踪:该功能的实现重点在于奖励值函数的设定。该奖励值的设定将以实际能耗与轨迹跟踪的速度偏差、位移偏差作为奖励值函数的变量。这时水下滑翔机在复杂的海洋环境中能够依据过往的运行情况,对策略与评价深度学习神经网络的训练,可以获得动作与动态奖励值的映射关系。由此通过策略与评价网络可以获得最优轨迹跟踪的行为动作。附图说明
[0032]图1是轨迹跟踪原理示意图。
[0033]图2是基于强化学习的目标轨迹跟踪原理框图。[0034]图3是水下滑翔机系统内部构成示意图。
[0035]图4是基于策略与评价的强化学习方法框架结构图。[0036]图5是基于策略与评价的强化学习控制流程示意图。
具体实施方式
[0037]以下结合附图和具体实施例对本发明作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。[0038]如图1所示,g目标运动速度具有时变性,本发明的目的是实现滑翔机对g目标的轨迹跟踪,即达到在t时刻与g的距离为(xd,yd)∈[(dx1,dx2),(dy1,dy2)],且能耗最优,前提假设为UG的最大速度>g目标的最大速度,UG的最小速度 [0040]该控制方法设计在UG主控内部,属于智能决策部分。图3为滑翔机系统内部组成,由通讯模块、主控模块、导航模块、传感器系统、执行机构构成,各模块间实现信息和指令的流动。其中主控模块分为智能决策单元和控制器单元两部分,智能决策单元又分为状态转化单元、评价单元和策略单元。 [0041]主控模块中智能决策单元的各单元相互协作如图4所示,具体如下: [0042]状态转化单元:将获得的g目标轨迹信息与UG的当前位置信息进行信息提取和计算,形成状态数组。依据当前状态得到当前状态的奖励Rtemp=f(Rdis,Reny),即该奖励为轨迹保持的奖励与能耗的奖励的函数。Rdis表示水下滑翔机与被跟踪目标的距离值,水下滑 6 CN 111813143 A 说 明 书 4/4页 翔机一个剖面结束后浮出水面,通过与卫星通讯获得自身位置与目标位置,计算可得该数值。Reny表示动作的能量消耗,可通过水下滑翔机电压值及能耗公式进行计算。[0043]策略单元:由独立深度学习神经网络A构成,该网络A输入为状态数组,输出为动作,用于轨迹跟踪的动作为[航向角、俯仰角、回油量]。当获得当前状态,此单元输出动作,即智能决策的输出。对神经网络的训练是采用其自身网络输出与评价单元输出的误差,训练过程是向着减少误差的方向更新。对训练好的神经网络进行权值保存。[0044]评价单元:由独立的深度学习神经网络B构成,该网络B输入为状态、Rtemp,输出为值函数V。建立记忆库,考虑到海洋的时变性,将记忆库中的记忆按照时间的不同赋予不同权重,越近的记忆权重越大,越远的记忆,权重越小,记忆库满后用新记忆覆盖旧记忆,采用批次学习法对神经网络进行训练。[0045]智能决策后采用PID控制执行:依据智能决策输出的动作[航向角、俯仰角、回油量],对于航向角与俯仰角,在UG下潜后采用PID控制。[0046]本发明方法的主旨如下:首先建立水下滑翔机基于策略与评价的强化学习算法,其次建立仿真动态环境与水下滑翔机动力学模型(主要用于训练深度神经网络并验证算法的有效性),接着水下滑翔机与该动态环境进行交互,汇集成记忆库并不断训练神经网络,通过轨迹线的输出验证算法的有效性。最后对水下滑翔机进行海洋测试,通过与真实的海洋环境的交互,获得真实的状态与奖励,进一步训练网络,获得最优控制值。[0047]具体的控制步骤如图5所示,具体如下:[0048]6.1初始化状态、学习率等参数:设定UG的初始位置,获得目标的初始位置,设定学习率、学习批次、记忆库容量、神经网络权值赋随机初值。[0049]6.2依据状态转化单元进行状态转化,形成当前状态S,采用策略单元中的神经网络进行动作选择,输出动作A[航向角、俯仰角、回油量]。[0050]6.3UG通过PID控制,执行6.2输出的动作A,UG下潜,执行V字剖面滑翔。[0051]6.4在步骤6.3动作结束后,UG则浮出水面,获得当前位置信息O,及目标位置信息P。 [0052]6.5状态转化单元依据6.4的位置信息,进行状态转化,形成状态数组S′。由状态数组S′计算奖励值Rdis,该值通过与g目标的计划距离换算。由A及S′计算能耗cost值Reny,即将不同的动作值产生的能耗转化为能耗cost值。计算综合即时奖励Rtemp=f(Rdis,Reny)。[0053]6.6评价单元,通过S′值由评价单元的深度学习神经网络B计算V值,计算价值误差。在满足学习批次的条件下对该神经网络B采用记忆库中的记忆进行训练。[0054]6.7依据评价单元的值误差,对策略单元的深度学习神经网络A进行训练。[0055]6.8将S′状态设置为当前状态。[0056]6.9是否结束轨迹跟踪的任务,如果“是”,则转入6.2步骤,“否”则结束循环,输出轨迹曲线。 [0057]本发明并不限于上文描述的实施方式。以上对具体实施方式的描述旨在描述和说明本发明的技术方案,上述的具体实施方式仅仅是示意性的,并不是限制性的。在不脱离本发明宗旨和权利要求所保护的范围情况下,本领域的普通技术人员在本发明的启示下还可做出很多形式的具体变换,这些均属于本发明的保护范围之内。 7 CN 111813143 A 说 明 书 附 图 1/3页 图1 图2 8 CN 111813143 A 说 明 书 附 图 2/3页 图3 图4 9 CN 111813143 A 说 明 书 附 图 3/3页 图5 10 因篇幅问题不能全部显示,请点此查看更多更全内容