CN114967713B - 基于强化学习的水下航行器浮力离散变化下的控制方法 - Google Patents

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

Info

Publication number
CN114967713B
CN114967713B CN202210897366.8A CN202210897366A CN114967713B CN 114967713 B CN114967713 B CN 114967713B CN 202210897366 A CN202210897366 A CN 202210897366A CN 114967713 B CN114967713 B CN 114967713B
Authority
CN
China
Prior art keywords
underwater vehicle
network
buoyancy
strategy
target
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
CN202210897366.8A
Other languages
English (en)
Other versions
CN114967713A (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 CN202210897366.8A priority Critical patent/CN114967713B/zh
Publication of CN114967713A publication Critical patent/CN114967713A/zh
Application granted granted Critical
Publication of CN114967713B publication Critical patent/CN114967713B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/40Control within particular dimensions
    • G05D1/48Control of altitude or depth
    • G05D1/485Control of rate of change of altitude or depth
    • 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/02Control of position or course in two dimensions
    • G05D1/0206Control of position or course in two dimensions specially adapted to water vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2101/00Details of software or hardware architectures used for the control of position
    • G05D2101/10Details of software or hardware architectures used for the control of position using artificial intelligence [AI] techniques
    • G05D2101/15Details of software or hardware architectures used for the control of position using artificial intelligence [AI] techniques using machine learning, e.g. neural networks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2107/00Specific environments of the controlled vehicles
    • G05D2107/25Aquatic environments
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D2109/00Types of controlled vehicles
    • G05D2109/30Water vehicles
    • G05D2109/38Water vehicles operating under the water surface, e.g. submarines
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

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)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本发明涉及一种基于强化学习的水下航行器浮力离散变化下的控制方法,属于水下航行器控制领域,包括定义水下航行器浮力离散变化的上浮控制问题;建立水下航行器浮力离散变化条件下的上浮控制问题的马尔科夫决策模型,将上浮控制目标转换为深度强化学习框架下的水下航行器浮力离散变化条件下的上浮控制目标;构建策略‑评价网络:求解水下航行器的目标策略。本发明在TD3算法的基础上改进了网络结构,增加了一个当前评价网络和一个目标评价网络,使算法稳定性与收敛性更好,采用策略‑评价网络结构,将采集到的水下航行器状态信息作为系统输入,舵角指令为系统输出,实现水下航行器浮力离散变化条件下上浮控制的自主性与可控性。

Description

基于强化学习的水下航行器浮力离散变化下的控制方法
技术领域
本发明涉及一种基于强化学习的水下航行器浮力离散变化下的控制方法,属于水下航行器控制技术领域。
背景技术
在海洋开发日益重要的现在,水下航行器越来越得到各个国家的重视,无论是在民用还是在军用上,都扮演着重要的角色。保证水下航行器的自主性与可控性是水下航行器控制的基本要求,也是最重要的功能。但由于水下航行器具有强耦合性、高度非线性等特点,在水下环境运行时又容易受到洋流等因素干扰,导致水下航行器的控制难度增大。
水下航行器控制包括路径跟踪控制、轨迹跟踪控制、上浮控制等。经典控制技术虽然取得了重大成就,但水下航行器复杂的操作条件和面临的恶劣水下环境对自主性与可控性的要求更高。水下航行器具有模型复杂、非线性与耦合性强、欠驱动的特点,当水下航行器遇到卡舵、推进器故障等问题时,使水下航行器在最短时间内上浮到水面的控制难度更大。深度强化学习具有强大的感知能力与决策能力,能自主适应恶劣的水下环境与水下航行器复杂的操作条件,面对不同的故障问题具有一定的自适应性,是实现水下航行器控制自主性与可控性的优选方法。
近年来,深度强化学习在处理很多具有挑战性的问题上表现出优异性能,如深度Q 网络(DQN)。但对于高维和连续动作空间的水下航行器的控制问题来说,DQN达不到控制要 求,于是深度确定性策略梯度(Deep Deterministic policy gradient, DDPG)算法被提 出。然而,DDPG存在与DQN存在相同的问题,即Q值(Q值代表智能体在状态s时,执行动作a后 一直到最终状态奖励r总和的期望,其中
Figure 366314DEST_PATH_IMAGE001
是Q值的具体体现之一)会被高估,于是在此基 础上,双延迟深度确定性策略梯度(Twin Delayed Deep Deterministic policy gradient,TD3)算法被提出。
传统的TD3算法虽然在一定程度上解决了Q值被高估的问题,但稳定性和收敛性较差。
发明内容
针对现有技术的不足,本发明提供一种基于强化学习的水下航行器浮力离散变化下的控制方法,在TD3算法的基础上改进了网络结构,使算法稳定性与收敛性更好,本发明基于改进的TD3算法,采用策略-评价网络结构,将采集到的水下航行器状态信息作为系统输入,舵角指令为系统输出,实现水下航行器浮力离散变化条件下的上浮控制的自主性与可控性。
本发明采用以下技术方案:
一种基于强化学习的水下航行器浮力离散变化下的控制方法,包括如下步骤:
步骤1、定义水下航行器浮力离散变化的上浮控制问题包括四部分:确定水下航行器系统输入、确定水下航行器系统输出、计算位置误差和建立水下航行器浮力离散变化条件下的上浮控制目标;
步骤2、建立水下航行器浮力离散变化条件下的上浮控制问题的马尔科夫决策模型,将步骤1建立的水下航行器浮力离散变化条件下的上浮控制目标转换为深度强化学习框架下的水下航行器浮力离散变化条件下的上浮控制目标;
步骤3、构建策略-评价网络:
通过构建两个策略网络和六个评价网络来选择最优策略
Figure 752296DEST_PATH_IMAGE002
,进而选择最优 动作
Figure 138891DEST_PATH_IMAGE003
,达到离散动力下水下航行器上浮控制的目的;本发明在TD3算法的基础上增 加了两个评价网络,以避免对动作价值的过估计;
(3-1)构建策略网络
通过构建策略网络来输出当前状态下的动作
Figure 206204DEST_PATH_IMAGE004
,策略网络包括一个当前策略网 络和一个目标策略网络,当前策略网络和目标策略网络均包括一个输入层、两个隐藏层和 一个输出层并且各层之间均为全连接的神经网络;输入层的输入为状态向量
Figure 754997DEST_PATH_IMAGE005
,神经元个 数为状态向量的维度;隐藏层神经元个数为512;输出层的输出为动作
Figure 249563DEST_PATH_IMAGE006
,神经元个数为动 作的维度;
隐藏层激活函数采用ReLu函数,输出层采用tanh函数,策略网络参数为
Figure 126383DEST_PATH_IMAGE007
Figure 997387DEST_PATH_IMAGE008
, 其中
Figure 400687DEST_PATH_IMAGE009
为当前策略网络参数,
Figure 69084DEST_PATH_IMAGE010
为目标策略参数;
(3-2)构建评价网络
通过构建评价网络来输出当前动作对应的价值
Figure 433201DEST_PATH_IMAGE011
评价网络包括三个当前评价网络和三个目标评价网络,三个当前评价网络和三个 目标评价网络均包括一个输入层、两个隐藏层和一个输出层并且各层之间均为全连接的神 经网络,输入层的输入为状态向量
Figure 842316DEST_PATH_IMAGE012
,神经元个数为状态向量的维度;隐藏层神经元个数 为512,动作值
Figure 303385DEST_PATH_IMAGE013
作为第一个隐藏层的输入;输出层的输出为动作对应的价值
Figure 202071DEST_PATH_IMAGE014
,神经元个数为动作价值的维度;
隐藏层激活函数采用ReLu函数,输出层采用线性函数,评价网络参数为
Figure 53483DEST_PATH_IMAGE015
,其中,
Figure 997781DEST_PATH_IMAGE016
Figure 375673DEST_PATH_IMAGE017
Figure 382943DEST_PATH_IMAGE018
为当前评价网络参数,
Figure 721651DEST_PATH_IMAGE019
Figure 738149DEST_PATH_IMAGE020
Figure 704968DEST_PATH_IMAGE021
为目标 评价网络参数;
(3-3)确定目标策略
根据构建的策略-评价网络,将第t个时间步学习到的动作
Figure 148719DEST_PATH_IMAGE022
作为输出;
步骤4、求解水下航行器的目标策略。
本发明在TD3的基础上,改进了TD3的网络结构,使算法稳定性与收敛性更好,解决了水下航行器高维连续动作空间的控制问题,实现水下航行器浮力离散变化条件下上浮控制的自主性与可控性。
浮力离散变化是在水下航行器发生故障,比如推进器失能,无法为水下航行器提 供动力时,使用紧急措施为水下航行器提供数值大小远超过自身重力的浮力,此时的浮力 如图4所示,横坐标为时间t,纵坐标为浮力F,
Figure 700355DEST_PATH_IMAGE023
代表最大的浮力值,方向垂直向上;F G 代 表与重力大小相等的浮力值,方向垂直向上;0-t 1t 2-t 3时刻代表浮力持续时间,t 1-t 2为冷 却时间。
优选的,步骤1的具体步骤如下:
(1-1)确定水下航行器系统输入
系统输入包括传感器信息
Figure 51702DEST_PATH_IMAGE024
、由路径规划模块给出的参考位 置信息
Figure 76290DEST_PATH_IMAGE025
以及上一时间步的系统输出
Figure 956521DEST_PATH_IMAGE026
其中,
Figure 738663DEST_PATH_IMAGE027
为当前位置向量,
Figure 893701DEST_PATH_IMAGE028
为当前的速度向量,包括线速度与角速度,
Figure 35445DEST_PATH_IMAGE029
为 当前的加速度向量,包括线加速度与角加速度,
Figure 86578DEST_PATH_IMAGE030
为离散变化的浮力;
传感器包括陀螺仪、多普勒测速仪等,用来获取水下航行器的位姿、速度、推力信息,路径规划模块可集成在控制器中,用于给出参考位置信息,传感器、路径规划模块均为本领域的常规结构,上一时间步是指在控制器运行过程中,时间是离散的,每一个离散的时间单位在这里称为一个时间步;
(1-2)确定水下航行器系统输出
系统输出为
Figure 621595DEST_PATH_IMAGE031
,其中
Figure 518007DEST_PATH_IMAGE032
为水平舵舵角、
Figure 48346DEST_PATH_IMAGE033
为垂直舵舵角;
(1-3)计算位置误差
位置误差
Figure 942484DEST_PATH_IMAGE034
为(1-1)中传感器位置向量
Figure 826782DEST_PATH_IMAGE035
与参考位置信息
Figure 526884DEST_PATH_IMAGE036
的差值,
Figure 318254DEST_PATH_IMAGE037
是水下航行器竖直水面上对应的坐标点;
Figure 445610DEST_PATH_IMAGE038
时,则视为上浮成功;
(1-4)建立水下航行器浮力离散变化条件下的上浮控制目标
目标函数:
Figure 17537DEST_PATH_IMAGE039
其中,γ为折扣因子,r为奖励函数,τ为系统输出,rτ相关的函数,i代表第t个时 间步之后的第i个时间步,水下航行器浮力离散变化条件下的上浮控制的目标是求解出最 优的系统输出
Figure 318068DEST_PATH_IMAGE040
,使目标函数
Figure 291840DEST_PATH_IMAGE041
最大化。
优选的,步骤2的具体步骤如下:
(2-1)定义状态向量
状态向量为
Figure 259272DEST_PATH_IMAGE042
(2-2)定义动作向量
定义第t个时间步的动作向量为第t时间步的系统输出
Figure 115232DEST_PATH_IMAGE043
(2-3)定义奖励函数
定义第t个时间步的奖励函数为
Figure 157138DEST_PATH_IMAGE044
,奖励函数代表在状态
Figure 985416DEST_PATH_IMAGE045
时采取动作
Figure 126679DEST_PATH_IMAGE046
所获 得的奖励,根据水下航行器当前位置误差、与下一时刻的期望位置误差、输出动作、期望航 向角、横倾角与横倾角速度设置奖励函数如下:
Figure 673198DEST_PATH_IMAGE048
(1)
其中,
Figure 595759DEST_PATH_IMAGE049
分别为各项的加权系数,
Figure 544124DEST_PATH_IMAGE050
为横倾角,
Figure 184184DEST_PATH_IMAGE051
为横倾角速 度,
Figure 217999DEST_PATH_IMAGE052
为上一时间步的水平舵舵角,
Figure 539390DEST_PATH_IMAGE053
为上一时间步的垂直舵舵角;
(2-4)将建立的水下航行器浮力离散变化条件下的上浮控制目标转换为深度强化学习框架下的水下航行器浮力离散变化条件下的上浮控制目标,具体的,定义策略π为在某一状态下选择各个可能动作的概率,定义动作值函数如下:
Figure 342261DEST_PATH_IMAGE054
(2)
其中,
Figure 153222DEST_PATH_IMAGE055
表示策略为π时对奖励函数、状态和动作的期望值;
水下航行器的浮力离散变化条件下的上浮控制目标为通过水下航行器与环境的 交互来学习一个最优策略
Figure 468141DEST_PATH_IMAGE056
,使得初始时刻的
Figure 655540DEST_PATH_IMAGE057
最大;
于是,步骤(1-4)建立的水下航行器控制目标的求解转换为
Figure 578497DEST_PATH_IMAGE058
的求解。
值得注意的是,步骤2建立的马尔科夫决策模型是建立控制方法的机制,并没有用到受控过程的数学模型,即马尔科夫决策模型不属于受控过程的数学模型。
优选的,步骤4的具体步骤如下:
(4-1)参数设置
采用Adam优化器,策略网络学习率为
Figure 560359DEST_PATH_IMAGE059
,评价网络学习率为
Figure 240870DEST_PATH_IMAGE060
,学习率是神经网络设置中的基础参数,策略网络学习率和评价网络学习率都代表了在梯 度下降法中,使用损失函数的梯度调整网络参数的程度,学习率越大,对参数的调整越大, 反之则对参数的调整越小;折扣因子为γ,调整因子为λ,最大训练步数T,软更新系数β,噪 声ε,经验集
Figure 231960DEST_PATH_IMAGE061
大小为D,批量选择的样本数m,当前策略网络更新间隔步数
Figure 540582DEST_PATH_IMAGE062
,目标网络更 新频率C
(4-2)初始化策略-评价网络参数
随机初始化策略-评价网络参数
Figure 696275DEST_PATH_IMAGE063
Figure 598503DEST_PATH_IMAGE064
Figure 393284DEST_PATH_IMAGE065
,构建经验集
Figure 25253DEST_PATH_IMAGE066
,并初 始化为空;
(4-3)迭代开始,对策略-评价网络进行训练,初始化迭代次数episode=1;
(4-4)设置当前时间步t=0,随机初始化水下航行器的状态变量
Figure 614498DEST_PATH_IMAGE067
,令当前时间步 的状态变量
Figure 597497DEST_PATH_IMAGE068
(4-5)生成正态分布噪声
Figure 930390DEST_PATH_IMAGE069
,根据策略网络得到当前时间步的输出动 作,
Figure 148357DEST_PATH_IMAGE070
,其中
Figure 174082DEST_PATH_IMAGE071
代表策略网络的输出;
(4-6)水下航行器在当前状态
Figure 378798DEST_PATH_IMAGE072
下执行动作
Figure 515381DEST_PATH_IMAGE073
,根据步骤(2-3)得到即时奖励
Figure 856364DEST_PATH_IMAGE074
,并观测到新的状态向量
Figure 318569DEST_PATH_IMAGE075
,将收集的经验样本存入经验集
Figure 745003DEST_PATH_IMAGE076
Figure 419698DEST_PATH_IMAGE077
(4-7)如果当前时间步数小于10000,则重复步骤(4-5)与(4-6)以填充经验集,否则进入下一步骤;
(4-8)从经验集中采样m个样本
Figure 668714DEST_PATH_IMAGE078
,计算目标评价 网络目标Q值
Figure 36242DEST_PATH_IMAGE079
Figure 949971DEST_PATH_IMAGE081
(3)
其中,
Figure 428357DEST_PATH_IMAGE082
代表目标策略网络,
Figure 9511DEST_PATH_IMAGE083
代表目标策略网络在状态为
Figure 282361DEST_PATH_IMAGE084
时的 输出(
Figure 948965DEST_PATH_IMAGE085
后面加括号,即括号里有参数时代表输出,没括号代表网络),
Figure 965463DEST_PATH_IMAGE086
分 别代表三个目标评价网络的输出;
(4-9)使用均方差损失函数
Figure 132615DEST_PATH_IMAGE087
,其中,
Figure 576365DEST_PATH_IMAGE088
分别代表三个当前评价网络的输出,通过神经网络的梯度反向传播来更 新三个当前评价网络中的所有参数
Figure 402370DEST_PATH_IMAGE089
Figure 222558DEST_PATH_IMAGE090
Figure 43884DEST_PATH_IMAGE091
Figure 924115DEST_PATH_IMAGE092
(4)
其中,
Figure 34154DEST_PATH_IMAGE093
代表求
Figure 395384DEST_PATH_IMAGE094
关于
Figure 805636DEST_PATH_IMAGE095
的梯度;
(4-10)如果
Figure 591190DEST_PATH_IMAGE096
,其中,%代表求余符号,即
Figure 454104DEST_PATH_IMAGE097
个时间步更新一次当前 策略网络参数,使用损失函数:
Figure 616095DEST_PATH_IMAGE098
(5)
通过神经网络的梯度反向传播来更新当前策略网络的参数
Figure 880854DEST_PATH_IMAGE099
Figure 774992DEST_PATH_IMAGE100
(6)
其中,
Figure 448505DEST_PATH_IMAGE101
代表求
Figure 569781DEST_PATH_IMAGE102
关于
Figure 689046DEST_PATH_IMAGE103
的梯度;
(4-11)如果
Figure 485577DEST_PATH_IMAGE104
,更新目标策略网络和三个目标评价网络中的参数:
Figure 323083DEST_PATH_IMAGE105
(7)
Figure 561297DEST_PATH_IMAGE106
(8)
Figure 331807DEST_PATH_IMAGE107
(9)
Figure 630064DEST_PATH_IMAGE108
(10)
(4-12)如果没有上浮成功,即
Figure 396944DEST_PATH_IMAGE109
,则进入步骤(4-5),重复步骤(4-5)及后续的 步骤;
如果上浮成功,即
Figure 492377DEST_PATH_IMAGE110
,且
Figure 255409DEST_PATH_IMAGE111
,则此回合结束,进入步骤(4-4),重复步骤(4- 4)及其后续步骤,进入下一回合;
如果时间步数
Figure 990147DEST_PATH_IMAGE112
,即时间步数达到所设置的最大训练步数T,则整个训练结 束,进入步骤(4-13);
(4-13)迭代结束,将学习到的策略与评价网络作为控制网络,实现对水下航行器浮力离散变化条件下的上浮控制。
优选的,步骤(1-1)中,
Figure 67824DEST_PATH_IMAGE113
的最大值为F max ,其中F max =300N。
优选的,步骤(1-2)中水平舵舵角、垂直舵舵角的最大值均为±15°。
优选的,步骤(2-3)中,
Figure 179000DEST_PATH_IMAGE114
优选的,步骤(4-1)中,折扣因子γ=0.99,调整因子为λ=0.9,最大训练步数T= 500000,软更新系数β=0.005,经验集
Figure 861785DEST_PATH_IMAGE115
大小D=10000,批量选择的样本数m=256,当前策略 网络更新间隔步数
Figure 439528DEST_PATH_IMAGE116
,目标网络更新频率C=2。
本发明中未详尽之处,均可采用现有技术进行。
本发明的有益效果为:
(1)本发明提出了一种基于强化学习的水下航行器浮力离散变化下的控制方法,该方法采用一种策略-评价网络结构,用于水下航行器推进器故障,即推进器失能的情况下,将采集到原始传感器信息、参考位置信息、上一时刻的输出作为当前时刻系统输入,输出舵角指令,使水下航行器平稳上浮至水面,实现浮力离散变化条件下的水下航行器上浮控制;本发明针对的是水下航行器推进器故障的情况,使用一种浮力离散变化条件下的紧急挽救方式,使水下航行器快速且平稳地上浮至水面。使用深度强化学习方法,具有很好的自主性,可以拓展至不同紧急情况下的推进器故障问题。
(2)本发明中的控制方法中控制器的设计仅利用受控系统的输入输出数据,控制器中不包含受控过程的数学模型,即本发明的控制方法是无模型的,故不需要复杂的建模,而且可以很好地适用于强耦合性与强非线性特点的水下航行器;
(3)本发明针对TD3算法解决Q值高估问题进一步优化,与传统的TD3算法相比,本 发明中算法增加了一个当前评价网络和一个目标评价网络,共两个评价网络。如公式(3)所 示,对于目标评价网络中的
Figure 7431DEST_PATH_IMAGE117
值而言,总会有高有低,高的值会有过估计的可能,本发明中 对三个目标评价网络的
Figure 125560DEST_PATH_IMAGE118
取最小值用于计算
Figure 866114DEST_PATH_IMAGE119
,避免
Figure 677075DEST_PATH_IMAGE120
变化过大,即更好地避免过 估计,又由于计算得到的
Figure 994924DEST_PATH_IMAGE121
用于当前评价网络的更新,当前评价网络的输出值用于当前 策略网络更新,因此可以保证当前评价网络更新的稳定性,从而实现当前策略网络稳定更 新,进而提高算法稳定性。
附图说明
图1为本发明的基于强化学习的水下航行器浮力离散变化下的控制方法框架示意图;
图2为策略网络结构示意图;
图3为评价网络结构示意图;
图4为浮力变化示意图;
图5为水下航行器所在的坐标系示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述,但不仅限于此,本发明未详尽说明的,均按本领域常规技术。
一种基于强化学习的水下航行器浮力离散变化下的控制方法,因深度强化学习方法强大的自适应性,该方法适用于不同型号的水下航行器,只需在应用时重新修改参数设置即可,具体的,在模拟训练时直接将质量、长度、力系数、力矩转矩系数换成相应型号水下航行器的系数。
实施例1
一种基于强化学习的水下航行器浮力离散变化下的控制方法,本实施例以广泛使用的REMUS水下航行器为例进行说明,如图1所示,包括如下步骤:
步骤1、定义水下航行器浮力离散变化的上浮控制问题包括四部分:确定水下航行器系统输入、确定水下航行器系统输出、计算位置误差和建立水下航行器浮力离散变化条件下的上浮控制目标,具体如下:
(1-1)确定水下航行器系统输入
系统输入包括传感器信息
Figure 916744DEST_PATH_IMAGE122
、由路径规划模块给出的参考 位置信息
Figure 243295DEST_PATH_IMAGE123
以及上一时间步的系统输出
Figure 287475DEST_PATH_IMAGE124
其中,
Figure 30303DEST_PATH_IMAGE125
为当前位置向量,
Figure 693496DEST_PATH_IMAGE126
为当前的速度向量,包括线速度与角速度,
Figure 470960DEST_PATH_IMAGE127
为当 前的加速度向量,包括线加速度与角加速度,
Figure 420461DEST_PATH_IMAGE128
为离散变化的浮力,
Figure 385006DEST_PATH_IMAGE129
的最大值为F max ,其 中F max =300N;
传感器包括陀螺仪、多普勒测速仪等,用来获取水下航行器的位姿、速度、推力信息,路径规划模块可集成在控制器中,用于给出参考位置信息,传感器、路径规划模块均为本领域的常规结构,上一时间步是指在控制器运行过程中,时间是离散的,每一个离散的时间单位在这里称为一个时间步;
(1-2)确定水下航行器系统输出
系统输出为
Figure 866539DEST_PATH_IMAGE130
,其中
Figure 232929DEST_PATH_IMAGE131
为水平舵舵角、
Figure 618911DEST_PATH_IMAGE132
为垂直舵舵角;水平 舵舵角、垂直舵舵角的最大值均为±15°。
(1-3)计算位置误差
位置误差
Figure 336332DEST_PATH_IMAGE133
为(1-1)中传感器位置向量
Figure 341328DEST_PATH_IMAGE134
与参考位置信息
Figure 562225DEST_PATH_IMAGE135
的差值,
Figure 585020DEST_PATH_IMAGE123
是水下航行器竖直水面上对应的坐标点,如图5所示,
Figure 586474DEST_PATH_IMAGE136
坐标系为固定 的地理原点坐标系,
Figure 457478DEST_PATH_IMAGE137
坐标系为随水下航行器运动的运动坐标系;
Figure 798461DEST_PATH_IMAGE138
时,则视为上浮成功;
(1-4)建立水下航行器浮力离散变化条件下的上浮控制目标
目标函数:
Figure 667191DEST_PATH_IMAGE139
其中,γ为折扣因子,r为奖励函数,τ为系统输出,rτ相关的函数,i代表第t个时 间步之后的第i个时间步,水下航行器浮力离散变化条件下的上浮控制的目标是求解出最 优的系统输出
Figure 93624DEST_PATH_IMAGE140
,使目标函数
Figure 33898DEST_PATH_IMAGE141
最大化。
步骤2、建立水下航行器浮力离散变化条件下的上浮控制问题的马尔科夫决策模型
(2-1)定义状态向量
状态向量为
Figure 232317DEST_PATH_IMAGE142
(2-2)定义动作向量
定义第t个时间步的动作向量为第t时间步的系统输出
Figure 131003DEST_PATH_IMAGE143
(2-3)定义奖励函数
定义第t个时间步的奖励函数为
Figure 44732DEST_PATH_IMAGE144
,奖励函数代表在状态
Figure 195222DEST_PATH_IMAGE145
时采取动作
Figure 510797DEST_PATH_IMAGE146
所获 得的奖励,根据水下航行器当前位置误差、与下一时刻的期望位置误差、输出动作、期望航 向角、横倾角与横倾角速度设置奖励函数如下:
Figure 49225DEST_PATH_IMAGE147
(1)
其中,
Figure 184672DEST_PATH_IMAGE148
分别为各项的加权系数,
Figure 463819DEST_PATH_IMAGE149
为横倾角,
Figure 696217DEST_PATH_IMAGE150
为横倾角速度,
Figure 874389DEST_PATH_IMAGE151
为上一时间步的水平舵舵角,
Figure 28289DEST_PATH_IMAGE152
为上一时间步的垂直舵舵角;在本实施例中,
Figure 520582DEST_PATH_IMAGE153
(2-4)将步骤(1-4)建立的水下航行器浮力离散变化条件下的上浮控制目标转换为深度强化学习框架下的水下航行器浮力离散变化条件下的上浮控制目标,具体的,定义策略π为在某一状态下选择各个可能动作的概率,定义动作值函数如下:
Figure 810749DEST_PATH_IMAGE154
(2)
其中,
Figure 159822DEST_PATH_IMAGE155
表示策略为π时对奖励函数、状态和动作的期望值;
水下航行器的浮力离散变化条件下的上浮控制目标为通过水下航行器与环境的 交互来学习一个最优策略
Figure 323388DEST_PATH_IMAGE058
,使得初始时刻的
Figure 947267DEST_PATH_IMAGE156
最大;
于是,步骤(1-4)建立的水下航行器控制目标的求解转换为
Figure 826362DEST_PATH_IMAGE157
的求解。
值得注意的是,步骤2建立的马尔科夫决策模型是建立控制方法的机制,并没有用到受控过程的数学模型,即马尔科夫决策模型不属于受控过程的数学模型。
步骤3、构建策略-评价网络:
通过构建两个策略网络和六个评价网络来选择最优策略
Figure 877494DEST_PATH_IMAGE158
,进而选择最优 动作
Figure 412512DEST_PATH_IMAGE159
,达到离散动力下水下航行器上浮控制的目的;本发明在TD3算法的基础上增 加了两个评价网络,以避免对动作价值的过估计;
(3-1)构建策略网络
通过构建策略网络来输出当前状态下的动作
Figure 544809DEST_PATH_IMAGE160
,策略网络包括一个当前策略网 络和一个目标策略网络,当前策略网络和目标策略网络均包括一个输入层、两个隐藏层和 一个输出层并且各层之间均为全连接的神经网络;输入层的输入为状态向量
Figure 11168DEST_PATH_IMAGE161
,神经元个 数为状态向量的维度;隐藏层神经元个数为512;输出层的输出为动作
Figure 967622DEST_PATH_IMAGE162
,神经元个数为动 作的维度;
隐藏层激活函数采用ReLu函数,输出层采用tanh函数,策略网络参数为
Figure 52253DEST_PATH_IMAGE163
Figure 692969DEST_PATH_IMAGE164
, 其中
Figure 812234DEST_PATH_IMAGE165
为当前策略网络参数,
Figure 939590DEST_PATH_IMAGE164
为目标策略参数;
(3-2)构建评价网络
通过构建评价网络来输出当前动作对应的价值
Figure 573834DEST_PATH_IMAGE166
评价网络包括三个当前评价网络和三个目标评价网络,三个当前评价网络和三个 目标评价网络均包括一个输入层、两个隐藏层和一个输出层并且各层之间均为全连接的神 经网络,输入层的输入为状态向量
Figure 812048DEST_PATH_IMAGE167
,神经元个数为状态向量的维度;隐藏层神经元个数为 512,动作值
Figure 457925DEST_PATH_IMAGE013
作为第一个隐藏层的输入;输出层的输出为动作对应的价值
Figure 18831DEST_PATH_IMAGE168
,神 经元个数为动作价值的维度;
隐藏层激活函数采用ReLu函数,输出层采用线性函数,评价网络参数为
Figure 812475DEST_PATH_IMAGE169
,其中,
Figure 916697DEST_PATH_IMAGE170
Figure 744976DEST_PATH_IMAGE171
Figure 479714DEST_PATH_IMAGE172
为当前评价网络参数,
Figure 698337DEST_PATH_IMAGE173
Figure 543933DEST_PATH_IMAGE174
Figure 483508DEST_PATH_IMAGE175
为目标评价网络 参数;
(3-3)确定目标策略
根据构建的策略-评价网络,将第t个时间步学习到的动作
Figure 389147DEST_PATH_IMAGE176
作为输出。
步骤4、求解水下航行器的目标策略,具体步骤如下:
(4-1)参数设置
采用Adam优化器,策略网络学习率为
Figure 157383DEST_PATH_IMAGE177
,评价网络学习率为
Figure 603408DEST_PATH_IMAGE178
,学习率是神经网络设置中的基础参数,策略网络学习率和评价网络学习率都代表了在梯 度下降法中,使用损失函数的梯度调整网络参数的程度,学习率越大,对参数的调整越大, 反之则对参数的调整越小;折扣因子γ=0.99,调整因子λ=0.9,最大训练步数T=500000,软 更新系数β=0.005,噪声ε,经验集
Figure 671858DEST_PATH_IMAGE179
大小D=10000,批量选择的样本数m=256,当前策略网络 更新间隔步数
Figure 482819DEST_PATH_IMAGE180
,目标网络更新频率C=2;
(4-2)初始化策略-评价网络参数
随机初始化策略-评价网络参数
Figure 410455DEST_PATH_IMAGE181
Figure 860504DEST_PATH_IMAGE182
Figure 517881DEST_PATH_IMAGE015
,构建经验集
Figure 234164DEST_PATH_IMAGE183
,并初 始化为空;
(4-3)迭代开始,对策略-评价网络进行训练,初始化迭代次数episode=1;
(4-4)设置当前时间步t=0,随机初始化水下航行器的状态变量
Figure 649096DEST_PATH_IMAGE184
,令当前时间步 的状态变量
Figure 171345DEST_PATH_IMAGE185
(4-5)生成正态分布噪声
Figure 683228DEST_PATH_IMAGE186
,根据策略网络得到当前时间步的输出动 作,
Figure 776605DEST_PATH_IMAGE187
,其中
Figure 803467DEST_PATH_IMAGE188
代表策略网络的输出;
(4-6)水下航行器在当前状态
Figure 67089DEST_PATH_IMAGE189
下执行动作
Figure 964638DEST_PATH_IMAGE190
,根据步骤(2-3)得到即时奖励
Figure 225986DEST_PATH_IMAGE191
,并观测到新的状态向量
Figure 677827DEST_PATH_IMAGE192
,将收集的经验样本存入经验集
Figure 804528DEST_PATH_IMAGE193
中,
Figure 291004DEST_PATH_IMAGE194
(4-7)如果当前时间步数小于10000,则重复步骤(4-5)与(4-6)以填充经验集,否则进入下一步骤;
(4-8)从经验集中采样m个样本
Figure 723253DEST_PATH_IMAGE195
,计算目标评价网 络目标Q值
Figure 927970DEST_PATH_IMAGE196
Figure 595711DEST_PATH_IMAGE197
(3)
其中,
Figure 620516DEST_PATH_IMAGE198
代表目标策略网络,
Figure 362949DEST_PATH_IMAGE199
代表目标策略网络在状态为
Figure 589050DEST_PATH_IMAGE200
时的输 出(
Figure 201428DEST_PATH_IMAGE201
后面加括号,即括号里有参数时代表输出,没括号代表网络),
Figure 396917DEST_PATH_IMAGE202
分别代 表三个目标评价网络的输出;
(4-9)使用均方差损失函数
Figure 295603DEST_PATH_IMAGE203
,其中,
Figure 479505DEST_PATH_IMAGE204
分别代表三个当前评价网络的输出,通过神经网络的梯度反向传播来更新 三个当前评价网络中的所有参数
Figure 9755DEST_PATH_IMAGE205
Figure 59751DEST_PATH_IMAGE206
Figure 267354DEST_PATH_IMAGE207
Figure 402800DEST_PATH_IMAGE208
(4)
其中,
Figure 481614DEST_PATH_IMAGE209
代表求
Figure 386116DEST_PATH_IMAGE210
关于
Figure 767550DEST_PATH_IMAGE211
的梯度;
(4-10)如果
Figure 390293DEST_PATH_IMAGE212
,其中,%代表求余符号,即
Figure 210481DEST_PATH_IMAGE213
个时间步更新一次当前策 略网络参数,使用损失函数:
Figure 124534DEST_PATH_IMAGE214
(5)
通过神经网络的梯度反向传播来更新当前策略网络的参数
Figure 739186DEST_PATH_IMAGE215
Figure 521329DEST_PATH_IMAGE216
(6)
其中,
Figure 941946DEST_PATH_IMAGE217
代表求
Figure 821040DEST_PATH_IMAGE218
关于
Figure 544277DEST_PATH_IMAGE219
梯度;
(4-11)如果
Figure 138681DEST_PATH_IMAGE220
,更新目标策略网络和三个目标评价网络中的参数:
Figure 97410DEST_PATH_IMAGE221
(7)
Figure 768694DEST_PATH_IMAGE222
(8)
Figure 459570DEST_PATH_IMAGE223
(9)
Figure 606517DEST_PATH_IMAGE224
(10)
(4-12)如果没有上浮成功,即
Figure 306620DEST_PATH_IMAGE225
,则进入步骤(4-5),重复步骤(4-5)及后续的 步骤;
如果上浮成功,即
Figure 100919DEST_PATH_IMAGE226
,且
Figure 228275DEST_PATH_IMAGE227
,则此回合结束,进入步骤(4-4),重复步骤(4- 4)及其后续步骤,进入下一回合;
如果时间步数
Figure 596940DEST_PATH_IMAGE228
,即时间步数达到所设置的最大训练步数T,则整个训练结束, 进入步骤(4-13);
(4-13)迭代结束,将学习到的策略与评价网络作为控制网络,实现对水下航行器浮力离散变化条件下的上浮控制。
如图1所示,S代表状态s集合,A代表动作a集合,R代表即时奖励r集合,
Figure 835154DEST_PATH_IMAGE229
分别代表输入到目标策略网络中的状态、动作、即时奖励集合;
如图2为策略网络结构示意图,其中观察量为系统输入,舵角为系统输出;
如图3为评价网络结构示意图,动作值是从第一个隐藏层输入。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (7)

1.一种基于强化学习的水下航行器浮力离散变化下的控制方法,其特征在于,包括如下步骤:
步骤1、定义水下航行器浮力离散变化的上浮控制问题,包括确定水下航行器系统输入、确定水下航行器系统输出、计算位置误差和建立水下航行器浮力离散变化条件下的上浮控制目标;
步骤2、建立水下航行器浮力离散变化条件下的上浮控制问题的马尔科夫决策模型,将步骤1建立的水下航行器浮力离散变化条件下的上浮控制目标转换为深度强化学习框架下的水下航行器浮力离散变化条件下的上浮控制目标;
步骤3、构建策略-评价网络:
(3-1)构建策略网络
通过构建策略网络来输出当前状态下的动作
Figure 630207DEST_PATH_IMAGE001
,策略网络包括一个当前策略网络和一个目标策略网络,当前策略网络和目标策略网络均包括一个输入层、两个隐藏层和一个输出层并且各层之间均为全连接的神经网络;输入层的输入为状态向量
Figure 770202DEST_PATH_IMAGE002
,神经元个数为状态向量的维度;隐藏层神经元个数为512;输出层的输出为动作
Figure 350219DEST_PATH_IMAGE003
,神经元个数为动作的维度;
隐藏层激活函数采用ReLu函数,输出层采用tanh函数,策略网络参数为
Figure 157638DEST_PATH_IMAGE004
Figure 860015DEST_PATH_IMAGE005
,其中
Figure 113404DEST_PATH_IMAGE004
为当前策略网络参数,
Figure 356166DEST_PATH_IMAGE006
为目标策略参数;
(3-2)构建评价网络
通过构建评价网络来输出当前动作对应的价值
Figure 893458DEST_PATH_IMAGE007
评价网络包括三个当前评价网络和三个目标评价网络,三个当前评价网络和三个目标评价网络均包括一个输入层、两个隐藏层和一个输出层并且各层之间均为全连接的神经网络,输入层的输入为状态向量
Figure 766736DEST_PATH_IMAGE008
,神经元个数为状态向量的维度;隐藏层神经元个数为512,动作值
Figure 146902DEST_PATH_IMAGE009
作为第一个隐藏层的输入;输出层的输出为动作对应的价值
Figure 990093DEST_PATH_IMAGE010
,神经元个数为动作价值的维度;
隐藏层激活函数采用ReLu函数,输出层采用线性函数,评价网络参数为
Figure 506525DEST_PATH_IMAGE011
Figure 550704DEST_PATH_IMAGE012
,其中,
Figure 44265DEST_PATH_IMAGE013
Figure 628830DEST_PATH_IMAGE014
Figure 203031DEST_PATH_IMAGE015
为当前评价网络参数,
Figure 90215DEST_PATH_IMAGE016
Figure 179394DEST_PATH_IMAGE017
Figure 692284DEST_PATH_IMAGE018
为目标评价网络参数;
(3-3)确定目标策略
根据构建的策略-评价网络,将第t个时间步学习到的动作
Figure 120991DEST_PATH_IMAGE019
作为输出;
步骤4、求解水下航行器的目标策略;
步骤1的具体步骤如下:
(1-1)确定水下航行器系统输入
系统输入包括传感器信息
Figure 569290DEST_PATH_IMAGE020
、由路径规划模块给出的参考位置信息
Figure 21131DEST_PATH_IMAGE021
以及上一时间步的系统输出
Figure 150761DEST_PATH_IMAGE022
其中,
Figure 496292DEST_PATH_IMAGE023
为当前位置向量,
Figure 753309DEST_PATH_IMAGE024
为当前的速度向量,包括线速度与角速度,
Figure 754763DEST_PATH_IMAGE025
为当前的加速度向量,包括线加速度与角加速度,
Figure 219243DEST_PATH_IMAGE026
为离散变化的浮力;
(1-2)确定水下航行器系统输出
系统输出为
Figure 560225DEST_PATH_IMAGE027
,其中
Figure 553589DEST_PATH_IMAGE028
为水平舵舵角、
Figure 573498DEST_PATH_IMAGE029
为垂直舵舵角;
(1-3)计算位置误差
位置误差
Figure 497460DEST_PATH_IMAGE030
为(1-1)中传感器位置向量
Figure 755266DEST_PATH_IMAGE031
与参考位置信息
Figure 450690DEST_PATH_IMAGE032
的差值,
Figure 364419DEST_PATH_IMAGE033
是水下航行器竖直水面上对应的坐标点,当
Figure 639543DEST_PATH_IMAGE034
时,则视为上浮成功;
(1-4)建立水下航行器浮力离散变化条件下的上浮控制目标
目标函数:
Figure 548593DEST_PATH_IMAGE035
其中γ为折扣因子,r为奖励函数,τ为系统输出,rτ相关的函数,i代表第t个时间步之后的第i个时间步,水下航行器浮力离散变化条件下的上浮控制的目标是求解出最优的系统输出
Figure 572175DEST_PATH_IMAGE036
,使目标函数
Figure 566675DEST_PATH_IMAGE037
最大化。
2.根据权利要求1所述的基于强化学习的水下航行器浮力离散变化下的控制方法,其特征在于,步骤2的具体步骤如下:
(2-1)定义状态向量
状态向量为
Figure 645490DEST_PATH_IMAGE038
(2-2)定义动作向量
定义第t个时间步的动作向量为第t时间步的系统输出
Figure 815571DEST_PATH_IMAGE039
(2-3)定义奖励函数
定义第t个时间步的奖励函数为
Figure 852797DEST_PATH_IMAGE040
,奖励函数代表在状态
Figure 803436DEST_PATH_IMAGE041
时采取动作
Figure 607313DEST_PATH_IMAGE042
所获得的奖励,根据水下航行器当前位置误差、与下一时刻的期望位置误差、输出动作、期望航向角、横倾角与横倾角速度设置奖励函数如下:
Figure 490955DEST_PATH_IMAGE043
(1)
其中,
Figure 902345DEST_PATH_IMAGE044
为各项的加权系数,
Figure 746804DEST_PATH_IMAGE045
Figure 229738DEST_PATH_IMAGE046
为横倾角,
Figure 171149DEST_PATH_IMAGE047
为横倾角速度,
Figure 441856DEST_PATH_IMAGE048
为上一时间步的水平舵舵角,
Figure 163824DEST_PATH_IMAGE049
为上一时间步的垂直舵舵角;
(2-4)将建立的水下航行器浮力离散变化条件下的上浮控制目标转换为深度强化学习框架下的水下航行器浮力离散变化条件下的上浮控制目标,具体的,定义策略
Figure 122553DEST_PATH_IMAGE050
为在某一状态下选择各个可能动作的概率,定义动作值函数如下:
Figure 121733DEST_PATH_IMAGE051
(2)
其中,
Figure 937242DEST_PATH_IMAGE052
表示策略为
Figure 818610DEST_PATH_IMAGE053
时对奖励函数、状态和动作的期望值;
水下航行器的浮力离散变化条件下的上浮控制目标为通过水下航行器与环境的交互来学习一个最优策略
Figure 767981DEST_PATH_IMAGE054
,使得初始时刻的
Figure 480722DEST_PATH_IMAGE055
最大;
于是,步骤(1-4)建立的水下航行器控制目标的求解转换为
Figure 670395DEST_PATH_IMAGE056
的求解。
3.根据权利要求2所述的基于强化学习的水下航行器浮力离散变化下的控制方法,其特征在于,步骤4的具体步骤如下:
(4-1)参数设置
采用Adam优化器,策略网络学习率为
Figure 242322DEST_PATH_IMAGE057
,评价网络学习率为
Figure 339591DEST_PATH_IMAGE058
;折扣因子为γ,调整因子为λ,最大训练步数T,软更新系数β,噪声ε,经验集
Figure 110100DEST_PATH_IMAGE059
大小为D,批量选择的样本数m,当前策略网络更新间隔步数
Figure 159090DEST_PATH_IMAGE060
,目标网络更新频率C
(4-2)初始化策略-评价网络参数
随机初始化策略-评价网络参数
Figure 811788DEST_PATH_IMAGE061
Figure 916011DEST_PATH_IMAGE062
Figure 744289DEST_PATH_IMAGE063
Figure 72502DEST_PATH_IMAGE064
,构建经验集
Figure 415759DEST_PATH_IMAGE065
,并初始化为空;
(4-3)迭代开始,对策略-评价网络进行训练,初始化迭代次数episode=1;
(4-4)设置当前时间步t=0,随机初始化水下航行器的状态变量
Figure 979465DEST_PATH_IMAGE066
,令当前时间步的状态变量
Figure 786884DEST_PATH_IMAGE067
(4-5)生成正态分布噪声
Figure 489260DEST_PATH_IMAGE068
,根据策略网络得到当前时间步的输出动作,
Figure 257496DEST_PATH_IMAGE069
,其中
Figure 500259DEST_PATH_IMAGE070
代表策略网络的输出;
(4-6)水下航行器在当前状态
Figure 365447DEST_PATH_IMAGE002
下执行动作
Figure 661561DEST_PATH_IMAGE071
,根据步骤(2-3)得到即时奖励
Figure 776147DEST_PATH_IMAGE072
,并观测到新的状态向量
Figure 25863DEST_PATH_IMAGE073
,将收集的经验样本存入经验集
Figure 417661DEST_PATH_IMAGE074
中,
Figure 524158DEST_PATH_IMAGE075
(4-7)如果当前时间步数小于10000,则重复步骤(4-5)与(4-6)以填充经验集,否则进入下一步骤;
(4-8)从经验集中采样m个样本
Figure 63723DEST_PATH_IMAGE076
,计算目标评价网络目标Q值
Figure 772922DEST_PATH_IMAGE077
Figure 409440DEST_PATH_IMAGE078
(3)
其中,
Figure 624521DEST_PATH_IMAGE079
代表目标策略网络,
Figure 589066DEST_PATH_IMAGE080
代表目标策略网络在状态为
Figure 977322DEST_PATH_IMAGE081
时的输出,
Figure 671608DEST_PATH_IMAGE082
代表三个目标评价网络的输出,
Figure 480426DEST_PATH_IMAGE083
(4-9)使用均方差损失函数
Figure 56901DEST_PATH_IMAGE084
,其中
Figure 186531DEST_PATH_IMAGE085
代表三个当前评价网络的输出,
Figure 407428DEST_PATH_IMAGE086
,通过神经网络的梯度反向传播来更新三个当前评价网络中的所有参数
Figure 26628DEST_PATH_IMAGE087
Figure 28082DEST_PATH_IMAGE088
Figure 882775DEST_PATH_IMAGE089
Figure 348391DEST_PATH_IMAGE090
(4)
其中,
Figure 76176DEST_PATH_IMAGE091
代表求
Figure 237030DEST_PATH_IMAGE092
关于
Figure 36359DEST_PATH_IMAGE093
的梯度;
(4-10)如果
Figure 717001DEST_PATH_IMAGE094
,其中,%代表求余符号,即
Figure 615687DEST_PATH_IMAGE095
个时间步更新一次当前策略网络参数,使用损失函数:
Figure 388471DEST_PATH_IMAGE096
(5)
通过神经网络的梯度反向传播来更新当前策略网络的参数
Figure 601277DEST_PATH_IMAGE097
Figure 510328DEST_PATH_IMAGE098
(6)
其中,
Figure 845494DEST_PATH_IMAGE099
代表求
Figure 230208DEST_PATH_IMAGE100
关于
Figure 309022DEST_PATH_IMAGE101
的梯度;
(4-11)如果
Figure 72579DEST_PATH_IMAGE102
,更新目标策略网络和三个目标评价网络中的参数:
Figure 516330DEST_PATH_IMAGE103
(7)
Figure 201389DEST_PATH_IMAGE104
(8)
Figure 506731DEST_PATH_IMAGE105
(9)
Figure 593635DEST_PATH_IMAGE106
(10)
(4-12)如果没有上浮成功,即
Figure 457555DEST_PATH_IMAGE107
,则进入步骤(4-5);
如果上浮成功,即
Figure 426648DEST_PATH_IMAGE108
,且
Figure 847265DEST_PATH_IMAGE109
,则此回合结束,进入步骤(4-4),进入下一回合;
如果时间步数
Figure 460780DEST_PATH_IMAGE110
,则训练结束,进入步骤(4-13);
(4-13)迭代结束,将学习到的策略与评价网络作为控制网络,实现对水下航行器浮力离散变化条件下的上浮控制。
4.根据权利要求3所述的基于强化学习的水下航行器浮力离散变化下的控制方法,其特征在于,步骤(1-1)中,
Figure 370967DEST_PATH_IMAGE111
的最大值为F max ,其中F max =300N。
5.根据权利要求4所述的基于强化学习的水下航行器浮力离散变化下的控制方法,其特征在于,步骤(1-2)中水平舵舵角、垂直舵舵角的最大值均为±15°。
6.根据权利要求5所述的基于强化学习的水下航行器浮力离散变化下的控制方法,其特征在于,步骤(2-3)中,
Figure 441736DEST_PATH_IMAGE112
7.根据权利要求6所述的基于强化学习的水下航行器浮力离散变化下的控制方法,其特征在于,步骤(4-1)中,折扣因子γ=0.99,调整因子为λ=0.9,最大训练步数T=500000,软更新系数β=0.005,经验集
Figure 400465DEST_PATH_IMAGE113
大小D=10000,批量选择的样本数m=256,当前策略网络更新间隔步数
Figure 258700DEST_PATH_IMAGE114
=2,目标网络更新频率C=2。
CN202210897366.8A 2022-07-28 2022-07-28 基于强化学习的水下航行器浮力离散变化下的控制方法 Active CN114967713B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210897366.8A CN114967713B (zh) 2022-07-28 2022-07-28 基于强化学习的水下航行器浮力离散变化下的控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210897366.8A CN114967713B (zh) 2022-07-28 2022-07-28 基于强化学习的水下航行器浮力离散变化下的控制方法

Publications (2)

Publication Number Publication Date
CN114967713A CN114967713A (zh) 2022-08-30
CN114967713B true CN114967713B (zh) 2022-11-29

Family

ID=82969302

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210897366.8A Active CN114967713B (zh) 2022-07-28 2022-07-28 基于强化学习的水下航行器浮力离散变化下的控制方法

Country Status (1)

Country Link
CN (1) CN114967713B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115457781B (zh) * 2022-09-13 2023-07-11 内蒙古工业大学 一种基于多代理深度强化学习的智能交通信号灯控制方法
CN117376661B (zh) * 2023-12-06 2024-02-27 山东大学 一种基于神经网络的细粒度视频流自适应调节系统及方法

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106873379A (zh) * 2017-03-31 2017-06-20 北京工业大学 一种基于迭代adp算法的污水处理最优控制方法
CN107748566A (zh) * 2017-09-20 2018-03-02 清华大学 一种基于强化学习的水下自主机器人固定深度控制方法
CN108803321A (zh) * 2018-05-30 2018-11-13 清华大学 基于深度强化学习的自主水下航行器轨迹跟踪控制方法
CN108873687A (zh) * 2018-07-11 2018-11-23 哈尔滨工程大学 一种基于深度q学习的智能水下机器人行为体系结规划方法
CN110806759A (zh) * 2019-11-12 2020-02-18 清华大学 一种基于深度强化学习的飞行器航线跟踪方法
CN111966118A (zh) * 2020-08-14 2020-11-20 哈尔滨工程大学 一种rov推力分配与基于强化学习的运动控制方法
CN112462792A (zh) * 2020-12-09 2021-03-09 哈尔滨工程大学 一种基于Actor-Critic算法的水下机器人运动控制方法
CN113010963A (zh) * 2021-03-04 2021-06-22 山东大学 基于深度强化学习的变质量水下航行器避障方法及系统
CN113033118A (zh) * 2021-03-10 2021-06-25 山东大学 一种基于示范数据强化学习技术的水下航行器自主上浮控制方法
CN113033119A (zh) * 2021-03-11 2021-06-25 山东大学 一种基于双评论家强化学习技术的水下航行器目标区域上浮控制方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106873379A (zh) * 2017-03-31 2017-06-20 北京工业大学 一种基于迭代adp算法的污水处理最优控制方法
CN107748566A (zh) * 2017-09-20 2018-03-02 清华大学 一种基于强化学习的水下自主机器人固定深度控制方法
CN108803321A (zh) * 2018-05-30 2018-11-13 清华大学 基于深度强化学习的自主水下航行器轨迹跟踪控制方法
CN108873687A (zh) * 2018-07-11 2018-11-23 哈尔滨工程大学 一种基于深度q学习的智能水下机器人行为体系结规划方法
CN110806759A (zh) * 2019-11-12 2020-02-18 清华大学 一种基于深度强化学习的飞行器航线跟踪方法
CN111966118A (zh) * 2020-08-14 2020-11-20 哈尔滨工程大学 一种rov推力分配与基于强化学习的运动控制方法
CN112462792A (zh) * 2020-12-09 2021-03-09 哈尔滨工程大学 一种基于Actor-Critic算法的水下机器人运动控制方法
CN113010963A (zh) * 2021-03-04 2021-06-22 山东大学 基于深度强化学习的变质量水下航行器避障方法及系统
CN113033118A (zh) * 2021-03-10 2021-06-25 山东大学 一种基于示范数据强化学习技术的水下航行器自主上浮控制方法
CN113033119A (zh) * 2021-03-11 2021-06-25 山东大学 一种基于双评论家强化学习技术的水下航行器目标区域上浮控制方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Reinforcement Learning Based Relay Selection for Underwater Acoustic Cooperative Networks;Yuzhi Zhang et al.;《MDPI》;20220315;第1-27页 *
基于TD3的AUV智能控制方法研究;李茹;《信息科技辑》;20211215;第17-29页 *

Also Published As

Publication number Publication date
CN114967713A (zh) 2022-08-30

Similar Documents

Publication Publication Date Title
CN114967713B (zh) 基于强化学习的水下航行器浮力离散变化下的控制方法
CN111667513B (zh) 一种基于ddpg迁移学习的无人机机动目标跟踪方法
CN110806759B (zh) 一种基于深度强化学习的飞行器航线跟踪方法
CN113093802B (zh) 一种基于深度强化学习的无人机机动决策方法
CN112132263B (zh) 一种基于强化学习的多智能体自主导航方法
CN113033119B (zh) 一种基于双评论家强化学习技术的水下航行器目标区域上浮控制方法
CN112462792B (zh) 一种基于Actor-Critic算法的水下机器人运动控制方法
CN114839884B (zh) 一种基于深度强化学习的水下航行器底层控制方法及系统
CN113095481A (zh) 一种基于并行自我博弈的空战机动方法
CN110928189A (zh) 一种基于强化学习和李雅普诺夫函数的鲁棒控制方法
WO2020024172A1 (zh) 多状态连续动作空间的合作式方法及系统
CN112286218B (zh) 基于深度确定性策略梯度的飞行器大迎角摇滚抑制方法
CN109740741B (zh) 一种结合知识转移的强化学习方法及其应用于无人车自主技能的学习方法
Zhang et al. AUV path tracking with real-time obstacle avoidance via reinforcement learning under adaptive constraints
CN113221444B (zh) 一种面向空中智能博弈的行为模仿训练方法
CN114089776B (zh) 一种基于深度强化学习的无人机避障方法
CN113033118B (zh) 一种基于示范数据强化学习技术的水下航行器自主上浮控制方法
CN111176122A (zh) 一种基于双bp神经网络q学习技术的水下机器人参数自适应反步控制方法
CN115374933A (zh) 一种多节点探测器着陆行为智能规划及决策方法
CN114077258B (zh) 一种基于强化学习ppo2算法的无人艇位姿控制方法
CN114626505A (zh) 一种移动机器人深度强化学习控制方法
CN115826621B (zh) 一种基于深度强化学习的无人机运动规划方法及系统
CN114396949B (zh) 一种基于ddpg的移动机器人无先验地图导航决策方法
CN114911157A (zh) 基于部分可观测强化学习的机器人导航控制方法及系统
CN115933712A (zh) 基于深度强化学习的仿生鱼领导者—跟随者编队控制方法

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