当前位置: 首页 > 专利查询>山东大学专利>正文

基于强化学习的水下航行器浮力离散变化下的控制方法技术

技术编号:34751925 阅读:22 留言:0更新日期:2022-08-31 18:47
本发明专利技术涉及一种基于强化学习的水下航行器浮力离散变化下的控制方法,属于水下航行器控制领域,包括定义水下航行器浮力离散变化的上浮控制问题;建立水下航行器浮力离散变化条件下的上浮控制问题的马尔科夫决策模型,将上浮控制目标转换为深度强化学习框架下的水下航行器浮力离散变化条件下的上浮控制目标;构建策略

【技术实现步骤摘要】
基于强化学习的水下航行器浮力离散变化下的控制方法


[0001]本专利技术涉及一种基于强化学习的水下航行器浮力离散变化下的控制方法,属于水下航行器控制


技术介绍

[0002]在海洋开发日益重要的现在,水下航行器越来越得到各个国家的重视,无论是在民用还是在军用上,都扮演着重要的角色。保证水下航行器的自主性与可控性是水下航行器控制的基本要求,也是最重要的功能。但由于水下航行器具有强耦合性、高度非线性等特点,在水下环境运行时又容易受到洋流等因素干扰,导致水下航行器的控制难度增大。
[0003]水下航行器控制包括路径跟踪控制、轨迹跟踪控制、上浮控制等。经典控制技术虽然取得了重大成就,但水下航行器复杂的操作条件和面临的恶劣水下环境对自主性与可控性的要求更高。水下航行器具有模型复杂、非线性与耦合性强、欠驱动的特点,当水下航行器遇到卡舵、推进器故障等问题时,使水下航行器在最短时间内上浮到水面的控制难度更大。深度强化学习具有强大的感知能力与决策能力,能自主适应恶劣的水下环境与水下航行器复杂的操作条件,面对不同的故障问题具有一定的自适应性,是实现水下航行器控制自主性与可控性的优选方法。
[0004]近年来,深度强化学习在处理很多具有挑战性的问题上表现出优异性能,如深度Q网络(DQN)。但对于高维和连续动作空间的水下航行器的控制问题来说,DQN达不到控制要求,于是深度确定性策略梯度(Deep Deterministic policy gradient, DDPG)算法被提出。然而,DDPG存在与DQN存在相同的问题,即Q值(Q值代表智能体在状态s时,执行动作a后一直到最终状态奖励r总和的期望,其中是Q值的具体体现之一)会被高估,于是在此基础上,双延迟深度确定性策略梯度(Twin Delayed Deep Deterministic policy gradient,TD3)算法被提出。
[0005]传统的TD3算法虽然在一定程度上解决了Q值被高估的问题,但稳定性和收敛性较差。

技术实现思路

[0006]针对现有技术的不足,本专利技术提供一种基于强化学习的水下航行器浮力离散变化下的控制方法,在TD3算法的基础上改进了网络结构,使算法稳定性与收敛性更好,本专利技术基于改进的TD3算法,采用策略

评价网络结构,将采集到的水下航行器状态信息作为系统输入,舵角指令为系统输出,实现水下航行器浮力离散变化条件下的上浮控制的自主性与可控性。
[0007]本专利技术采用以下技术方案:一种基于强化学习的水下航行器浮力离散变化下的控制方法,包括如下步骤:步骤1、定义水下航行器浮力离散变化的上浮控制问题包括四部分:确定水下航行器系统输入、确定水下航行器系统输出、计算位置误差和建立水下航行器浮力离散变化条
件下的上浮控制目标;步骤2、建立水下航行器浮力离散变化条件下的上浮控制问题的马尔科夫决策模型,将步骤1建立的水下航行器浮力离散变化条件下的上浮控制目标转换为深度强化学习框架下的水下航行器浮力离散变化条件下的上浮控制目标;步骤3、构建策略

评价网络:通过构建两个策略网络和六个评价网络来选择最优策略,进而选择最优动作,达到离散动力下水下航行器上浮控制的目的;本专利技术在TD3算法的基础上增加了两个评价网络,以避免对动作价值的过估计;(3

1)构建策略网络通过构建策略网络来输出当前状态下的动作,策略网络包括一个当前策略网络和一个目标策略网络,当前策略网络和目标策略网络均包括一个输入层、两个隐藏层和一个输出层并且各层之间均为全连接的神经网络;输入层的输入为状态向量,神经元个数为状态向量的维度;隐藏层神经元个数为512;输出层的输出为动作,神经元个数为动作的维度;隐藏层激活函数采用ReLu函数,输出层采用tanh函数,策略网络参数为、,其中为当前策略网络参数,为目标策略参数;(3

2)构建评价网络通过构建评价网络来输出当前动作对应的价值;评价网络包括三个当前评价网络和三个目标评价网络,三个当前评价网络和三个目标评价网络均包括一个输入层、两个隐藏层和一个输出层并且各层之间均为全连接的神经网络,输入层的输入为状态向量,神经元个数为状态向量的维度;隐藏层神经元个数为512,动作值作为第一个隐藏层的输入;输出层的输出为动作对应的价值,神经元个数为动作价值的维度;隐藏层激活函数采用ReLu函数,输出层采用线性函数,评价网络参数为,其中,、、为当前评价网络参数,、、为目标评价网络参数;(3

3)确定目标策略根据构建的策略

评价网络,将第t个时间步学习到的动作作为输出;步骤4、求解水下航行器的目标策略。
[0008]本专利技术在TD3的基础上,改进了TD3的网络结构,使算法稳定性与收敛性更好,解决了水下航行器高维连续动作空间的控制问题,实现水下航行器浮力离散变化条件下上浮控制的自主性与可控性。
[0009]浮力离散变化是在水下航行器发生故障,比如推进器失能,无法为水下航行器提供动力时,使用紧急措施为水下航行器提供数值大小远超过自身重力的浮力,此时的浮力如图4所示,横坐标为时间t,纵坐标为浮力F,代表最大的浮力值,方向垂直向上;F
G

表与重力大小相等的浮力值,方向垂直向上;0

t1、t2‑
t3时刻代表浮力持续时间,t1‑
t2为冷却时间。
[0010]优选的,步骤1的具体步骤如下:(1

1)确定水下航行器系统输入系统输入包括传感器信息、由路径规划模块给出的参考位置信息以及上一时间步的系统输出;其中,为当前位置向量,为当前的速度向量,包括线速度与角速度,为当前的加速度向量,包括线加速度与角加速度,为离散变化的浮力;传感器包括陀螺仪、多普勒测速仪等,用来获取水下航行器的位姿、速度、推力信息,路径规划模块可集成在控制器中,用于给出参考位置信息,传感器、路径规划模块均为本领域的常规结构,上一时间步是指在控制器运行过程中,时间是离散的,每一个离散的时间单位在这里称为一个时间步;(1

2)确定水下航行器系统输出系统输出为,其中为水平舵舵角、为垂直舵舵角;(1

3)计算位置误差位置误差为(1

1)中传感器位置向量与参考位置信息的差值,是水下航行器竖直水面上对应的坐标点;当时,则视为上浮成功;(1

4)建立水下航行器浮力离散变化条件下的上浮控制目标目标函数:;其中,γ为折扣因子,r为奖励函数,τ为系统输出,r为τ相关的函数,i代表第t个时间步之后的第i个时间步,水下航行器浮力离散变化条件下的上浮控制的目标是求解出最优的系统输出,使目标函数最大化。
[0011]优选的,步骤2的具体步骤如下:(2

1)定义状态向量状态向量为;(2

2)定义动作向量定义第t个时间步的动作向量为第t时间步的系统输出;(2

3)定义奖励函数定义第t本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于强化学习的水下航行器浮力离散变化下的控制方法,其特征在于,包括如下步骤:步骤1、定义水下航行器浮力离散变化的上浮控制问题,包括确定水下航行器系统输入、确定水下航行器系统输出、计算位置误差和建立水下航行器浮力离散变化条件下的上浮控制目标;步骤2、建立水下航行器浮力离散变化条件下的上浮控制问题的马尔科夫决策模型,将步骤1建立的水下航行器浮力离散变化条件下的上浮控制目标转换为深度强化学习框架下的水下航行器浮力离散变化条件下的上浮控制目标;步骤3、构建策略

评价网络:(3

1)构建策略网络通过构建策略网络来输出当前状态下的动作,策略网络包括一个当前策略网络和一个目标策略网络,当前策略网络和目标策略网络均包括一个输入层、两个隐藏层和一个输出层并且各层之间均为全连接的神经网络;输入层的输入为状态向量,神经元个数为状态向量的维度;隐藏层神经元个数为512;输出层的输出为动作,神经元个数为动作的维度;隐藏层激活函数采用ReLu函数,输出层采用tanh函数,策略网络参数为、,其中为当前策略网络参数,为目标策略参数;(3

2)构建评价网络通过构建评价网络来输出当前动作对应的价值;评价网络包括三个当前评价网络和三个目标评价网络,三个当前评价网络和三个目标评价网络均包括一个输入层、两个隐藏层和一个输出层并且各层之间均为全连接的神经网络,输入层的输入为状态向量,神经元个数为状态向量的维度;隐藏层神经元个数为512,动作值作为第一个隐藏层的输入;输出层的输出为动作对应的价值,神经元个数为动作价值的维度;隐藏层激活函数采用ReLu函数,输出层采用线性函数,评价网络参数为,其中,、、为当前评价网络参数,、、为目标评价网络参数;(3

3)确定目标策略根据构建的策略

评价网络,将第t个时间步学习到的动作作为输出;步骤4、求解水下航行器的目标策略。2.根据权利要求1所述的基于强化学习的水下航行器浮力离散变化下的控制方法,其特征在于,步骤1的具体步骤如下:(1

1)确定水下航行器系统输入系统输入包括传感器信息、由路径规划模块给出的参考位置信息
以及上一时间步的系统输出;其中,为当前位置向量,为当前的速度向量,包括线速度与角速度,为当前的加速度向量,包括线加速度与角加速度,为离散变化的浮力;(1

2)确定水下航行器系统输出系统输出为,其中为水平舵舵角、为垂直舵舵角;(1

3)计算位置误差位置误差为(1

1)中传感器位置向量与参考位置信息的差值,是水下航行器竖直水面上对应的坐标点,当时,则视为上浮成功;(1

4)建立水下航行器浮力离散变化条件下的上浮控制目标目标函数:;其中γ为折扣因子,r为奖励函数,τ为系统输出,r为τ相关的函数,i代表第t个时间步之后的第i个时间步,水下航行器浮力离散变化条件下的上浮控制的目标是求解出最优的系统输出,使目标函数最大化。3.根据权利要求2所述的基于强化学习的水下航行器浮力离散变化下的控制方法,其特征在于,步骤2的具体步骤如下:(2

1)定义状态向量状态向量为;(2

2)定义动作向量定义第t个时间步的动作向量为第t时间步的系统输出;(2

3)定义奖励函数定义第t个时间步的奖励函数为,奖励函数代表在状态时采取动作所获得的奖励,根据水下航行器当前位置误差、与下一时刻的期望位置误差、输出动作、期望航向角、横倾角与横倾角速度设置奖励函数如下:(1)其中,分别为各项的加权系数,为横倾角,为横倾角速度,为上一时间步的水平舵舵角,为上一时间步的垂直舵舵角;(2

4)将建立的水下航行器浮力离散变化条件下的上浮控制目标转换为深度强化学习框架下的水下航行器浮力离散变化条件下的上浮控制目标,具体的,定义策略为在某一状态下选择各个可能动作的概率,定义动作值函数如下:(2)其中,表示策略为时对奖励函数、状态和动作的期望值;水下航行器...

【专利技术属性】
技术研发人员:李沂滨张悦庄英豪张天泽缪旭弘魏征
申请(专利权)人:山东大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1