一种基于双BP神经网络Q学习技术的水下机器人参数自适应反步控制方法技术

技术编号:24204187 阅读:84 留言:0更新日期:2020-05-20 13:58
一种基于双BP神经网络Q学习技术的水下机器人参数自适应反步控制方法,它属于水下机器人控制器参数调节技术领域。本发明专利技术解决了传统Q学习方法进行控制器参数调节时的学习效率低,以及传统反步法进行控制器参数调节时存在的参数不易实时在线调整的问题。本发明专利技术利用基于双BP神经网络Q学习算法与反步法相结合的方式实现对反步法控制器参数的自主在线调节,以满足控制参数能够实时在线调整的要求。同时由于引入了双BP神经网络以及经验回放池,其强大的拟合能力使得基于双BP神经网络Q学习参数自适应反步控制方法能够大大降低训练次数,以提升学习效率,在训练较少次数的情况下达到更好的控制效果。本发明专利技术可以应用于水下机器人控制器参数的调节。

A parameter adaptive backstepping control method of underwater vehicle based on Q-Learning technology of double BP neural network

【技术实现步骤摘要】
一种基于双BP神经网络Q学习技术的水下机器人参数自适应反步控制方法
本专利技术属于水下机器人控制器参数调节
,具体涉及一种基于双BP神经网络Q学习技术的水下机器人参数自适应反步控制方法。
技术介绍
水下机器人作为海洋资源探测和海底任务执行的重要工具和手段,其运动控制性能的好坏在很大程度上会影响任务完成的效果。目前,一些传统常规控制器以鲁棒性和可扩展性强的特点,在工业环境中得到了广泛的应用,但这些控制器通常不能得到最佳的调优,并不能达到令人满意的性能,在实际应用中,控制器的参数经过人工频繁调试后便固化在控制器中,无法适应被控过程中环境的变化,如何对控制器参数进行实时自主整定,以达到最优控制性能成为一个突出的问题。自适应控制可以通过对对象特征以及输入输出量的在线观测,按照一定的性能指标实现对控制器参数和性能的在线调节,而强化学习可以通过与环境的不断交互,积累经验和知识,在环境动态和底层未知的情况下接收强化信号,以此提高控制器的自适应能力,两者具有相通之处。然而,传统强化学习的学习机制依赖于Q值表,只能对离散的状态和动作空间进行学习,在进行状态和动作空间划分时势必会导致Q值表过大,使得智能体在学习过程中会因无法遍历所有状态和动作空间而无法收敛,因此传统Q学习的学习效率较低。同时,在利用传统反步法进行控制器参数的调节时,存在着控制器参数不易进行实时在线调整的问题。
技术实现思路
本专利技术的目的是为解决传统Q学习方法进行控制器参数调节时的学习效率低,以及传统反步法进行控制器参数调节时存在的参数不易实时在线调整的问题,而提出了一种基于双BP神经网络Q学习技术的水下机器人参数自适应反步控制方法。本专利技术为解决上述技术问题采取的技术方案是:一种基于双BP神经网络Q学习技术的水下机器人参数自适应反步控制方法,该方法包括以下步骤:步骤一、基于反步法分别设计水下机器人的速度控制系统和艏向控制系统,再根据设计的速度控制系统以及艏向控制系统确定速度控制系统的控制律以及艏向控制系统的控制律;水下机器人的速度控制系统为:其中,m为水下机器人的质量,和Xu|u|均为无量纲水动力参数,u为水下机器人纵向速度,|u|为u的绝对值,为水下机器人纵向加速度,τu为推进器纵向推力,v为水下机器人横向速度,r为水下机器人偏航角速度;水下机器人速度控制系统的控制律为:其中,ku为速度控制系统的控制律的待调节控制增益;水下机器人的艏向控制系统为:其中,为实际艏向角的一阶导数,为r的一阶导数,Nr、Nr|r|均为无量纲水动力参数,|r|为r的绝对值,τr为转艏力矩,Iz为水下机器人绕运动坐标系z轴的转动惯量;所述运动坐标系为:以水下机器人的重心为原点O,以指向水下机器人的艏向方向为x轴正向,以指向水下机器人的右舷方向为为y轴正向,以指向水下机器人的底部方向为z轴正向,且x轴、y轴、z轴符合右手螺旋定则的坐标系;水下机器人艏向控制系统的控制律为:其中,为艏向控制系统的控制律的第一个待调节控制增益,为艏向控制系统的控制律的第二个待调节控制增益;步骤二、建立由第一当前BP神经网络和第一目标BP神经网络组成的双BP神经网络模型一,其中,第一当前BP神经网络与第一目标BP神经网络的结构相同;第一当前BP神经网络输入的状态向量为St={s1u,s2u},其中,s1u为t时刻速度的偏差,s2u为t时刻速度的偏差变化率,输出为动作值集合k′u,再利用ε贪婪策略从动作值集合k′u中选择出当前状态向量对应的最优动作值k″u;第一目标BP神经网络输入的状态向量为:当前状态St执行最优动作at后所得到的下一时刻的状态St+1,第一目标BP神经网络根据输入的状态向量确定输出;步骤三、第一当前BP神经网络输出的实际Q值为Qm(St,at),第一目标BP神经网络输出的目标Q值为第一当前BP神经网络在当前状态St下选择最优动作at并执行后得到的奖赏值为rt+1(St+1,a),利用Qm(St,at)、和rt+1(St+1,a)来计算TD误差,再利用计算出的TD误差对第一当前BP神经网络的参数进行更新;每个时刻对应的状态动作样本对均存入经验样本池,在第一当前BP神经网络训练的空闲时间,从经验样本池中随机抽取固定数量的状态动作样本对,利用抽取的状态动作样本对对第一当前BP神经网络继续进行训练;且每经过N个时刻后,第一目标BP神经网络对第一当前BP神经网络的参数进行复制,实现对第一当前BP神经网络和第一目标BP神经网络参数的更新;步骤四、每个时刻的状态向量依次输入第一当前BP神经网络后,利用步骤二中每个时刻的状态向量对应的最优动作值,计算出在每个时刻速度控制系统的控制律的待调节控制增益ku;步骤五、建立由第二当前BP神经网络和第二目标BP神经网络组成的双BP神经网络模型二,其中,第二当前BP神经网络与第二目标BP神经网络的结构相同;第二当前BP神经网络输入的状态向量为其中,为t时刻航向角的偏差,为t时刻航向角的偏差变化率,为t时刻水下机器人实时速度,输出为动作值集合和再利用ε贪婪策略从动作值集合和中选择出当前状态向量对应的最优动作值和第二目标BP神经网络输入的状态向量为:当前状态S′t执行最优动作a′t后所得到的下一时刻的状态S′t+1,第二目标BP神经网络根据输入的状态向量确定输出;步骤六、第二当前BP神经网络输出的实际Q值为Qm(S′t,a′t),第二目标BP神经网络输出的目标Q值为第二当前BP神经网络在当前状态S′t下选择最优动作a′t并执行后得到的奖赏值为rt+1(S′t+1,a),利用Qm(S′t,a′t)、和rt+1(S′t+1,a)来计算TD误差,再利用计算出的TD误差对第二当前BP神经网络的参数进行更新;每个时刻对应的状态动作样本对均存入经验样本池,在第二当前BP神经网络训练的空闲时间,从经验样本池中随机抽取固定数量的状态动作样本对,利用抽取的状态动作样本对对第二当前BP神经网络继续进行训练;且每经过N个时刻后,第二目标BP神经网络对第二当前BP神经网络的参数进行复制,实现对第二当前BP神经网络和第二目标BP神经网络参数的更新;步骤七、当每个时刻的状态向量依次输入第二当前BP神经网络后,利用步骤五中每个时刻的状态向量对应的最优动作值,计算出在每个时刻艏向控制系统的控制律的待调节控制增益和本专利技术的有益效果是:本专利技术提出了一种基于双BP神经网络Q学习技术的水下机器人参数自适应反步控制方法,本专利技术利用基于双BP神经网络Q学习算法与反步法相结合的方式实现对反步法控制器参数的自主在线调节,以满足控制参数能够实时在线调整的要求。同时由于引入了双BP神经网络以及经验回放池,其强大的拟合能力使得基于双BP神经网络Q学习参数自适应反步的控制方法能够大大降低训练次数,以提升学习效率,在训练较少次数的情况下达到更好的控制效果。通过利用BP神经网络的强大拟合能力对状本文档来自技高网...

【技术保护点】
1.一种基于双BP神经网络Q学习技术的水下机器人参数自适应反步控制方法,其特征在于,该方法包括以下步骤:/n步骤一、基于反步法分别设计水下机器人的速度控制系统和艏向控制系统,再根据设计的速度控制系统以及艏向控制系统确定速度控制系统的控制律以及艏向控制系统的控制律;/n水下机器人的速度控制系统为:/n

【技术特征摘要】
1.一种基于双BP神经网络Q学习技术的水下机器人参数自适应反步控制方法,其特征在于,该方法包括以下步骤:
步骤一、基于反步法分别设计水下机器人的速度控制系统和艏向控制系统,再根据设计的速度控制系统以及艏向控制系统确定速度控制系统的控制律以及艏向控制系统的控制律;
水下机器人的速度控制系统为:



其中,m为水下机器人的质量,和Xu|u|均为无量纲水动力参数,u为水下机器人纵向速度,|u|为u的绝对值,为水下机器人纵向加速度,τu为推进器纵向推力,v为水下机器人横向速度,r为水下机器人偏航角速度;
水下机器人速度控制系统的控制律为:



其中,ku为速度控制系统的控制律的待调节控制增益;
水下机器人的艏向控制系统为:



其中,为实际艏向角的一阶导数,为r的一阶导数,Nr、Nr|r|均为无量纲水动力参数,|r|为r的绝对值,τr为转艏力矩,Iz为水下机器人绕运动坐标系z轴的转动惯量;
所述运动坐标系为:以水下机器人的重心为原点O,以指向水下机器人的艏向方向为x轴正向,以指向水下机器人的右舷方向为为y轴正向,以指向水下机器人的底部方向为z轴正向,且x轴、y轴、z轴符合右手螺旋定则的坐标系;
水下机器人艏向控制系统的控制律为:



其中,为艏向控制系统的控制律的第一个待调节控制增益,为艏向控制系统的控制律的第二个待调节控制增益;
步骤二、建立由第一当前BP神经网络和第一目标BP神经网络组成的双BP神经网络模型一,其中,第一当前BP神经网络与第一目标BP神经网络的结构相同;
第一当前BP神经网络输入的状态向量为St={s1u,s2u},其中,s1u为t时刻速度的偏差,s2u为t时刻速度的偏差变化率,输出为动作值集合k′u,再利用ε贪婪策略从动作值集合k′u中选择出当前状态向量对应的最优动作值k″u;
第一目标BP神经网络输入的状态向量为:当前状态St执行最优动作at后所得到的下一时刻的状态St+1,第一目标BP神经网络根据输入的状态向量确定输出;
步骤三、第一当前BP神经网络输出的实际Q值为Qm(St,at),第一目标BP神经网络输出的目标Q值为第一当前BP神经网络在当前状态St下选择最优动作at并执行后得到的奖赏值为rt+1(St+1,a),利用Qm(St,at)、和rt+1(St+1,a)来计算TD误差,再利用计算出的TD误差对第一当前BP神经网络的参数进行更新;
每个时刻对应的状态动作样本对均存入经验样本池,在第一当前BP神经网络训练的空闲时间,从经验样本池中随机抽取固定数量的状态动作样本对,利用抽取的状态动作样本对对每经过N个时刻后,第一目标BP神经网络对第一当前BP神经网络的参数进行复制,实现对第一当前BP神经网络和第一目标BP神经网络参数的更新;
步骤四、每个时刻的状态向量依次输入第一当前BP神经网络后,利用步骤二中每个时刻的状态向量对应的最优动作值,计算出在每个时刻速度控制系统的控制律的待调节控制增益ku;
步骤五、建立由第二当前BP神经网络和第二目标BP神经网络组成的双BP神经网络模型二,其中,第二当前BP神经网络与第二目标BP神经网络的结构相同;
第二当前BP神经网络输入的状态向量为其中,为t时刻偏航角的偏差,为t时刻偏航角的偏差变化率,为t时刻水下机器人实时速度,输出为动作值集合和再利用ε贪婪策略从动作值集合和中选择出当前状态向量对应的最优动作值和
第二目标BP神经网络输入的状态向量为:当前状态S′t执行最优动作a′t后所得到的下一时刻的状态S′t+1,第二目标BP神经网络根据输入的状态向量确定输出;
步骤六、第二当前BP神经网络输出的实际Q值为Qm(S′t,a′t),第二目标BP神经网络输出的目标Q值为第二当前BP神...

【专利技术属性】
技术研发人员:王卓张佩秦洪德孙延超邓忠超张宇昂景锐洁曹禹
申请(专利权)人:哈尔滨工程大学
类型:发明
国别省市:黑龙;23

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

1