一种基于Actor-Critic算法的水下机器人运动控制方法技术

技术编号:27620097 阅读:25 留言:0更新日期:2021-03-10 10:59
一种基于Actor

【技术实现步骤摘要】
一种基于Actor

Critic算法的水下机器人运动控制方法


[0001]本专利技术涉及基于Actor

Critic算法的水下机器人运动控制方法。

技术介绍

[0002]自主水下机器人(Autonomous Underwater Vehicle,AUV)作为探索海洋的重要技术手段,近几年在海洋环境科学、生物学、考古学、地理学等许多学科领域具有革命性应用,给许多研究提供了重要帮助,也因此受到社会各界的广泛关注。AUV复杂的动力学特性和多变的海洋环境对其运动控制提出了巨大挑战,因此,对AUV运动控制方法开展研究具有重要实践意义。在海洋中行进时,AUV受到的干扰包括洋流扰动、模型部分不确定等因素,而AUV执行的大部分任务都需要其具有良好的精确性,即对控制器的精度要求极高。部分传统控制方法依托于动力学方程进行推导,并通过反复实验选择合适的控制参数组成控制器,这种方法有着较高的稳定性,但人工选择参数的方式注定了其参数不容易接近最优解,不利于控制器精度的提高。随着人工智能科学的不断发展,不同强化学习算法被陆续提出,它们也逐渐被应用在控制领域。但许多较为成熟的应用实例大多基于简单动力学模型,对于AUV这类复杂的系统,单独的强化学习控制器并不能保证良好的鲁棒性,在复杂的运动环境中无法实现快速而精确的控制效果,因此这类控制方法也很难实现实物应用。考虑上述两种控制方法各自的优劣,近几年也有很多将强化学习算法与传统控制相结合的控制器被提出,但它们大多是基于Q值表或DQN等value
/>based算法或Policy Gradient这种简单的policy

based算法。毫无疑问这两种算法都有其不可避免的缺陷,如Q值表和DQN算法在系统动作空间较大的情况下精度较差,Policy Gradient训练需要数据量较大等。因此本专利技术针对AUV的速度与姿态控制问题,综合上述控制方法的优点与缺点,提出一种基于改进Actor

Critic算法的参数自适应反步控制器,实现对AUV速度和姿态的控制。

技术实现思路

[0003]本专利技术的目的是为了解决现有水下机器人难以在运动过程中实时调节参数,且受到干扰时,控制器对水下机器人速度和姿态的控制精度低问题,而提出一种基于Actor

Critic算法的水下机器人运动控制方法。
[0004]一种基于Actor

Critic算法的水下机器人运动控制方法具体过程为:
[0005]步骤一、初始化参数;
[0006]步骤二、基于反步法分别设计水下机器人的速度控制系统和艏向控制系统,再根据设计的速度控制系统以及艏向控制系统确定速度控制系统的控制律以及艏向控制系统的控制律;
[0007]步骤三、设定Actor

Critic神经网络,Actor

Critic神经网络包括四个RBF神经网络,分别为Actor当前网络、Actor目标网络、Critic当前网络和Critic目标网络;
[0008]步骤四、确定Actor当前网络的输入和输出;确定Critic当前网络的输入和输出;
[0009]步骤五、确定Actor目标网络的输入和输出;确定Critic目标网络的输入和输出;
[0010]步骤六、设定Actor网络的损失函数,对Actor网络的损失函数求梯度下降,并通过RBF神经网络更新公式更新Actor当前网络权值参数;
[0011]步骤七、计算Critic网络的损失函数,对Critic网络的损失函数求梯度下降,并通过RBF神经网络更新公式来更新Critic当前网络权值参数;
[0012]步骤八、重复执行步骤四至步骤七n次,第n次将更新后的critic当前网络权值参数复制到critic目标网络,将更新后的Actor当前网络权值参数复制到Actor目标网络;
[0013]步骤九、重复执行步骤八,直至Actor

Critic神经网络收敛,得到稳定的Q值;此时Actor当前网络输出动作,叠加噪声后,通过变换即为控制律参数值。
[0014]本专利技术的有益效果为:
[0015]本专利技术的目的是为了解决水下机器人系统不确定性强,运动环境易受干扰,而设计的传统控制器需要人工调参,参数很难达到最优解,对水下机器人速度和姿态的控制精度低问题,而提出一种基于Actor

Critic算法的水下机器人运动控制方法。本专利技术最终设计了一个可以实现在运动过程中参数实时调节的控制系统。在大致确定控制器初始参数后,改进后的Actor

Critic算法可以在实时运动中不断训练,输出连续动作,进而通过输出的连续值调节控制系统输出参数。本专利技术的优势在于,一方面控制器部分基于具体的AUV模型设计,确保了控制系统的稳定性和快速性;另一方面在稳定控制器的基础上利用强化学习算法对参数进行调整,达到不需要先验经验或样本,在实际运动中实时获取数据得到合适参数的效果,提高了控制系统的性能。提高了对水下机器人速度和姿态的控制精度。
附图说明
[0016]图1为本专利技术整体控制流程图;图2为RBF神经网络结构图;图3为theta=0.7,sigma=1时的OU噪声示例图;图4为theta=0.01,sigma=1时的OU噪声示例图;图5为theta=0.01,sigma=0.5时的OU噪声示例图;图6为改进后Actor

Critic算法结构图;图7为simulink仿真模型图;qf16是舶向值,v11是x轴速度,v12是y轴速度,v16是舶向角角速度。qf16_n是上一时刻舶向值,v11_n是上一时刻x轴速度,v12_n是上一时刻y轴速度,v16_n是上一时刻舶向角角速度;e为速度误差,ep为舶向角误差,u为纵向速度,ph为舶向角,v为y轴速度,r为舶向角速度,e_n为上一时刻的速度误差,ep_n为上一时刻的舶向角误差,u_n为上一时刻的纵向速度,ph_n为上一时刻的舶向角,v_n为上一时刻的y轴速度,r_n为上一时刻的舶向角速度;e_in为纵向速度误差,ep_in为舶向误差,u1为纵向速度导数,u_in为纵向速度,ph1为舶向角导数,ph_in为舶向角,v_in为y轴速度,r_in为舶向角角速度,e_nin为上一时刻纵向速度误差,ep_nin为上一时刻舶向误差,u_ni为上一时刻纵向速度导数,u_nin为上一时刻纵向速度,ph_n1为上一时刻舶向角导数,ph_inin为上一时刻舶向角,v_nin为上一时刻y轴速度,r_nin为上一时刻舶向角角速度;1/z为滞后模块,NNeval和NNtarget分别是当前网络和目标网络,F为力和力矩,Reward为回报函数,Loss update为损失函数,PG为梯度下降计算,new

value为神经网络权值更新,backstepping为反步法控制器,freeze为目标网络权值更新滞后,y是期望值,a本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于Actor

Critic算法的水下机器人运动控制方法,其特征在于:所述方法具体过程为:步骤一、初始化参数;步骤二、基于反步法分别设计水下机器人的速度控制系统和艏向控制系统,再根据简化后的AUV动力学模型和运动学方程确定速度控制系统的控制律以及艏向控制系统的控制律;步骤三、设定Actor

Critic神经网络,Actor

Critic神经网络包括四个RBF神经网络,分别为Actor当前网络、Actor目标网络、Critic当前网络和Critic目标网络;步骤四、确定Actor当前网络的输入和输出;确定Critic当前网络的输入和输出;步骤五、确定Actor目标网络的输入和输出;确定Critic目标网络的输入和输出;步骤六、设定Actor网络的损失函数,对Actor网络的损失函数求梯度下降,并通过RBF神经网络更新公式更新Actor当前网络权值参数;步骤七、计算Critic网络的损失函数,对Critic网络的损失函数求梯度下降,并通过RBF神经网络更新公式来更新Critic当前网络权值参数;步骤八、重复执行步骤四至步骤七n次,第n次将更新后的critic当前网络权值参数复制到critic目标网络,将更新后的Actor当前网络权值参数复制到Actor目标网络;步骤九、重复执行步骤八,直至Actor

Critic神经网络收敛,得到稳定的Q值;此时Actor当前网络输出动作,叠加噪声后,通过变换即为控制律参数值。2.根据权利要求1所述一种基于Actor

Critic算法的水下机器人运动控制方法,其特征在于:所述步骤一中初始化参数;具体为:初始化神经网络参数θ、w为[

1,1]的随机数,并设置神经网络更新权值α、折扣率γ、ε;初始化控制器原始参数ku0、Kr10以及Kr20;初始化AUV模型参数质量m,无量纲水动力参数X
u|u|
、N
r
、N
r|r|
,水下机器人绕运动坐标系z轴的转动惯量I
z
。3.根据权利要求1或2所述一种基于Actor

Critic算法的水下机器人运动控制方法,其特征在于:所述步骤二中基于反步法分别设计水下机器人的速度控制系统和艏向控制系统,再根据设计的速度控制系统以及艏向控制系统确定速度控制系统的控制律以及艏向控制系统的控制律;具体过程为:水下机器人的速度控制系统为:其中,m为水下机器人的质量,和X
u|u|
均为无量纲水动力参数,u为水下机器人纵向速度,|u|为u的绝对值,为水下机器人纵向加速度,τ
u
为推进器纵向推力,v为水下机器人横向速度,r为水下机器人偏航角速度;水下机器人速度控制系统的控制律为:其中,k
u
为速度控制系统的控制律的待调节控制参数;k
u
>0;u
d
为目标速度;为目标加速度;
水下机器人的艏向控制系统为:其中,为实际艏向角的一阶导数,为r的一阶导数,N
r
、N
r|r|
均为无量纲水动力参数,|r|为r的绝对值,τ
r
为转艏力矩,I
z
为水下机器人绕运动坐标系z轴的转动惯量;所述运动坐标系为:以水下机器人的重心为原点O,以指向水下机器人的艏向方向为x轴正向,以指向水下机器人的右舷方向为为y轴正向,以指向水下机器人的底部方向为z轴正向,且x轴、y轴、z轴符合右手螺旋定则的坐标系;水下机器人艏向控制系统的控制律为:其中,k
ψ1
为艏向控制系统的控制律的第一个待调节控制参数,k
ψ2
为艏向控制系统的控制律的第二个待调节控制参数;k
ψ1
>0和k
ψ2
>0。4.根据权利要求3所述一种基于Actor

Critic算法的水下机器人运动控制方法,其特征在于:所述步骤三中设定Actor

Critic神经网络,Actor

Critic神经网络包括四个RBF神经网络,分别为Actor当前网络、Actor目标网络、Critic当前网络和Critic目标网络;具体过程为:四个RBF神经网络都是单输入层、单隐层和单输出层;输入层节点数量为i,隐层节点数量为j,输出层节点数量为k,隐层节点基函数为高斯基函数,如下式所示,c
j
是第j个基函数的中心点,σ
j
为基函数围绕中心点宽度,‖x

c
j
‖2表示向量x

c
j
的二范数;x为神经网络输入;式中,α
j
(x)为隐层节点基函数;f(
·
)是以e为底的指数函数。5.根据权利要求4所述一种基于Actor

Critic算法的水下机器人运动控制方法,其特征在于:所述步骤四中确定Actor当前网络的输入和输出;确定Critic当前网络的输入和输出;具体过程为:Actor当前网络输入的状态向量为S
t
={s
1u
,s
2u
};其中,s
1u
为t时刻速度的偏差,s
2u
为t时刻速度的偏差变化率;Actor当前网络输出的动作为a
t
;叠加噪声得到的新动作式中,π
θ
为Actor当前网络输出;S为状态向...

【专利技术属性】
技术研发人员:孙延超杜雨桐王卓吴淼秦洪德韩光洁
申请(专利权)人:哈尔滨工程大学
类型:发明
国别省市:

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

1