一种基于卷积神经网络优化NMPC算法的直接航迹控制方法与流程

文档序号:24892752发布日期:2021-04-30 13:20阅读:171来源:国知局
一种基于卷积神经网络优化NMPC算法的直接航迹控制方法与流程
本发明涉及一种基于卷积神经网络优化nmpc算法的直接航迹控制方法,属于控制
技术领域

背景技术
:usv(unmannedsurfacevessel,简称usv),是一种无人操作的水面船。它具有机动性强、速度快、自主化、无人化等特点,其主要功能是代替人执行一些特殊的、对人有危险的任务。usv在实际航行环境中会受到外部干扰的影响,精准的航迹控制是usv执行各项任务的基础保障,也是usv运动控制领域的研究热点。usv航迹控制算法主要分为两类,一类是间接控制算法,其设计思路是将航迹控制问题转化为航向控制问题,主要实现方式是将其分解为双闭环控制系统,内环由传统的航向控制算法构成,外环则使用航向解算算法,优点是可直接使用已有的自动舵技术,但控制精度相对较低。一类是直接控制算法,控制精度高,控制算法直接作用于航迹,但由于过程非线性,计算复杂,容易出现时滞性问题。技术实现要素:本发明所要解决的技术问题是提供一种基于卷积神经网络优化nmpc算法的直接航迹控制方法。本发明的技术方案如下:采用基于非线性模型预测控制(nmpc)算法的航迹控制器,根据预设航迹信息以及usv的初始状态信息,直接控制usv的航迹;航迹控制器的输出量为usv的舵角控制量以及航速控制量,航迹控制器收到usv反馈的状态量,包括usv的位置坐标信息和以及航向角信息,对输出的控制量进行自我校正;所述航迹控制器原理模型主要包括usv预测模型、目标函数以及约束信息三个方面,所解决的usv非线性航迹控制问题用以下有限时域内的最优化问题来表示:s.t.χk+1,t=f(χk,t,uk.t),k=t,…hp-1umin≤u(k)≤umaxδumin≤δu(k)≤δumax其中,状态量的矩阵形式为χ=[xyψ]t、控制量的矩阵形式为u=[uδ]t,x,y为usv重心在惯性坐标系的空间坐标;ψ为usv在惯性坐标系的方位角,u为usv速度的纵向分量,v为usv速度的横向分量,δ为舵角;χ(t+1)=f(χ(t),u(t))的差分方程为:目标函数其中,hp是mpc航迹控制器的预测时域,hc是mpc航迹控制器的控制时域,ρ为权重系数,ε为松弛因子。根据usv本身的控制特点,在输出控制量的过程中要考虑舵角约束以及航速约束。本发明中使用的usv舵角以及舵角控制量增量约束为:本发明中使用的usv航速以及航速增量约束为:进一步地,所述航迹控制器对预测输出值进行自我校正时,采用卷积神经网络算法进行局部寻优,获得下一时刻的usv舵角控制量以及航速控制量信息。具体求解步骤如下:(1)初始化参数:初始温度t0,降温速率q,结束温度tend,对应于每个温度t的迭代次数l,以当前时刻的控制量矩阵作为初始可行解矩阵u0;(2)对当前温度t,求解局部最优解,即重复步骤(3)至(6);(3)对当前可行解矩阵u0在控制量约束范围内随机产生一个新解u1;(4)对应于公式(11)所示的目标函数j,求解其对应于可行解矩阵u0和u1的增量dj=dj(u1)-dj(u0);(5)根据判断条件确定当前局部最优解,即若dj<0,则认为新解u1为最优解,用u1替代u0;否则,计算对于新解的接受概率exp(-df/t),当满足接受概率exp(-df/t)>rand(rand为(0,1)区间上的随机数)时,也认为新解u1为最优解,用u1替代u0;否则,仍认为u0为最优解。本发明采用非线性模型预测控制(nmpc)算法对水面usv进行直接航迹控制,采用卷积神经网络算法对预测控制算法进行最优控制序列求解,进一步提高航迹控制的准确性和实时性。模型预测控制采用反馈校正,可应对多种不确定性问题(包括系统干扰、模型失配等),并通过滚动优化策略在线求解局部最优化问题,极大地减少了在线优化计算量,提高算法的响应速度。附图说明图1,usv坐标系。图2,航迹跟踪效果(无干扰)。图3,状态量误差变化曲线(无干扰)。图4,控制量变化曲线(无干扰)。图5,曲线航迹跟踪效果(有干扰)。图6,状态量误差变化曲线(有干扰)。图7,控制量变化曲线(有干扰)。图8,扰动信号曲线图。具体实施方式本发明提供一种基于卷积神经网络优化nmpc算法的直接航迹控制方法。本发明方法中,基于nmpc的航迹控制器根据预设航迹信息以及usv的初始状态信息,直接控制usv的航迹,航迹控制器的输出量为usv的舵角控制量以及航速控制量。具体地,航迹控制器首先对预设航迹信息进行离散化处理,获得离散化后的第一个目标航迹点信息,根据此目标航迹点信息,计算usv舵角控制量以及所需航速控制量,进行航迹跟踪,获取离散化后的航迹信息上的下一个航迹点,重复以上动作,直到离散化后的航迹信息上的最后一个点。航迹跟踪过程中,航迹控制器收到usv的状态量反馈信号,包括usv的位置坐标信息和以及航向角信息,对预测输出值进行自我校正。所述航迹控制器原理模型包括usv预测模型、目标函数以及约束信息三个方面。usv预测模型一般来说,usv的运动情况需要使用六个自由度来描述,包括横摇、纵摇、艏摇、横荡、纵荡、垂荡。为描述usv在六自由度中的运动情况,需建立如图1所示的usv坐标系,包括固定坐标系o-x1y1z1(简称“定系”)和运动坐标系g-xyz(简称“动系”)。“定系”是指固定于地球上的惯性坐标系。“动系”是指跟随船体运动的附体坐标系,原点设在usv的船体重心g处,gx为usv水平面方向,gy为usv横剖面方向,gz为usv的纵中剖面方向。正方向按右手系的规定。usv在附体坐标系g-xyz和惯性坐标系o-x1y1z1中涉及到的运动参数如表1所示。其中x,y,z为usv所受外力在附体坐标系g-xyz上的投影;k,m,n为usv力矩在附体坐标系g-xyz上的投影;u,v,w为usv的速度在附体坐标系g-xyz上的投影;p,q,r为usv的角速度在附体坐标系g-xyz上的投影;(x,y,z)为usv重心在惯性坐标系o-x1y1z1的空间坐标;φ,θ,ψ为usv在惯性坐标系o-x1y1z1中的三个欧拉角,φ称为横倾角、θ称为纵倾角、ψ称为方位角。表1usv运动参数自由度力和力矩速度和位置和纵荡xux横荡yvy垂荡zwz横摇kpφ纵摇mqθ艏摇nrψ船舶在海洋上的航行情况既可以采用“动系”中的速度向量u,v,w和角速度向量p,q,r来表示,也可以使用定系中位置向量的导数及欧拉角姿态向量的导数来表示。研究者可根据自身课题研究需要确定表示方式。另外,船舶中的“动系”和“定系”之间还存在如下变换关系:a)位置向量的导数与速度向量u,v,w之间的坐标变换公式:其中,变换矩阵tv为:本发明的usv的直接航迹控制器重点关注usv在水平面的运动,暂且忽略橫倾、纵倾和升沉对usv运动的影响。因此将usv的六自由度模型的(1)和公式(2)进行化简,得到usv的三自由度模型为:其中,为usv位置信息的横坐标的导数,为usv位置信息的纵坐标的导数,为usv艏向角的导数,ψ为usv的艏向角,u为usv速度的纵向分量,v为usv速度的横向分量,r为usv的角速度。水面usv航行过程中,当满足u>>0且v≈0时,可忽略横漂角对usv运动的影响,此时方程(3)可进一步简化为:又已知usv角速度r和舵角δ之间的关系可用方程式(5)表示。方程式(5)中,k表示usv的旋回性指数,t表示usv的追随性指数。k、t的值可由usv的z形操纵性试验获得。将公式(5)带入公式(4)中,并以采样时间ts进行离散化处理,可得差分方程为:在水面usv的航迹控制中,若令状态量的矩阵形式为χ=[xyψ]t、控制量的矩阵形式为u=[uδ]t,根据公式(6)表示的usv输入状态量与输出控制量之间的关系,可以得出usv的非线性离散模型的一般表示为:χ(t+1)=f(χ(t),u(t))(7)目标函数基于非线性模型预测控制的航迹控制器中,目标函数的选取要能够充分反映usv航迹跟踪参考航迹的程度。本发明结合usv航迹控制的预测模型,设计目标函数如下:其中,hp是mpc航迹控制器的预测时域,hc是mpc航迹控制器的控制时域,ρ为权重系数,ε为松弛因子。该目标函数既考虑了usv对预设航迹的跟踪能力,也考虑了控制量增量的约束,有效的避免了控制量的突变。另外,在目标函数中加入了松弛因子,可以防止出现没有可行解的情况。约束条件根据usv本身的控制特点,在输出控制量的过程中要考虑舵角约束以及航速约束。本发明中使用的usv模型舵角以及舵角控制量增量约束为:本发明中使用的usv航速以及航速增量约束为:综上所述,usv非线性航迹控制问题可以用以下有限时域内的最优化问题来表示:算法流程与步骤优化算法的实时性以及准确性直接影响所设计的航迹控制器的控制效果,由于非线性目标函数较难求得解析解,此处针对公式(11)所示的局部最优化问题,采用卷积神经网络算法进行最优控制序列求解,具体求解步骤如下:(1)初始化参数:初始温度t0,降温速率q,结束温度tend,对应于每个温度t的迭代次数l,以当前时刻的控制量矩阵作为初始可行解矩阵u0;(2)对当前温度t,求解局部最优解,即重复步骤(3)至(6);(3)对当前可行解矩阵u0在控制量约束范围内随机产生一个新解u1;(4)对应于公式(11)所示的目标函数j,求解其对应于可行解矩阵u0和u1的增量dj=dj(u1)-dj(u0);(5)根据判断条件确定当前局部最优解,即若dj<0,则认为新解u1为最优解,用u1替代u0;否则,计算对于新解的接受概率exp(-df/t),当满足接受概率exp(-df/t)>rand(rand为(0,1)区间上的随机数)时,也认为新解u1为最优解,用u1替代u0;否则,仍认为u0为最优解。设置终止条件,使得温度t衰减至结束温度tend时,输出当前的最优解u0,不满足终止条件时,对当前温度t按降温速率进行衰减运算后,重复执行步骤2。仿真试验本发明中的实验船的基本参数如表2所示。表2usv主要参数在公式(6)中usv的旋回性指数k和usv的追随性指数t可以通过对实验船进行10°/10°的z形操纵性试验来获得。在平静的湖面进行了实验船的z形(10°/10°)试验,获得的实验船艏向角和舵角关系变化曲线,对usv试验数据进行拟合,求得实验船的k、t参数的值为:k=0.49,t=1.94。针对表2提出的试验船参数,对设计的基于卷积神经网络算法改进的nmpc的航迹控制器进行航迹控制效果仿真。各项参数设置为:(1)usv初始状态:位置坐标(0,-22),航向角ψ=0°,航速v=0m/s。(2)预设曲线航迹信息:原点为(0,0)、半径为20米的圆弧轨迹。期望跟踪速度vd=3m/s。(3)设置采样时间为50ms。(4)控制器参数设置:预测时域hp=10,控制时域hc=2,权重矩阵卷积神经网络优化控制器参数:初始温度t0=200,终止温度tend=e-3,温度下降速率q=0.9,对应于每个温度处的迭代次数l=200。仿真试验分别在无干扰和有干扰情况下进行仿真验证。无干扰条件下,对于预设圆弧形航迹,航迹跟踪仿真实验获得的结果如图2至4所示。由航迹跟踪效果图和状态量误差变化曲线可以看出,对于设定的圆形航迹,基于nmpc的直接航迹控制器可以根据当前时刻usv的状态信息,调整usv的舵角控制量和航速控制量,快速地跟踪到设定航迹,且最终的跟踪误差为零。由控制量变化曲线可以看出,在usv由接收到设定圆形航迹信息时刻的位置进行航迹跟踪时,舵角控制量以及航速控制量会立刻做出响应,直到usv跟踪到预设航迹上,航速稳定在期望航速上,舵角控制量以及航速控制量保持不变,实现预设圆形航迹的精确跟踪控制。对所设计的航迹控制器添加对应于usv实时航速的的干扰信号,对于有干扰情况,外部干扰信号设置为usv航速的25%,干扰信号对usv的航迹控制系统产生的影响可用公式(12)表示:其中,ts为采样时间。此处取ts=1。获得的航迹控制曲线以及过程中的干扰信号曲线如5到8所示。在有干扰的情况下,由航迹跟踪效果图可以看出,在usv接收到预设航迹信息初期,航迹跟踪效果较差,但是基于nmpc先预测后控制的思想,一段时间后基于nmpc-sa的航迹控制器对干扰信号进行了预测补偿,控制效果慢慢变好,到后期基本上能通过舵角补偿量实现对预设圆形航迹的精确跟踪控制。针对传统的粒子群算法容易陷入局部最优解的问题,本发明利用卷积神经网络算法的突跳特性提出了一种改进算法,通过加入多目标优化,提升了算法的实用性。仿真结果显示,改进算法可以优化usv自主航行的路径平滑度,提高路径的安全性,满足usv全局路径规划的要求。针对usv航迹控制中容易出现的非线性、时滞性问题,提出了基于非线性模型预测控制(nmpc)算法对水面usv进行直接航迹控制,并采用卷积神经网络算法对预测控制算法进行最优控制序列求解,提升了算法的实用性。仿真结果显示,改进算法有效地提高了航迹控制的准确性和实时性。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1