船舶动力定位的神经网络控制系统及其方法 本发明涉及一种船舶动力定位的控制系统及其方法,特别是涉及一种神经网络控制系统及其方法。
目前的船舶动力定位控制系统一般由控制器、电位放大器、滤波器、测位探头及执行机构组成,在控制器中采用的控制方法是“比例—积分—微分”方法,即PID方法,船在受到风、浪、流等环境力的作用后必然漂流原位,此时由PID系统起反馈控制作用,使船复位,几十万吨到几百万吨的船经常依靠动力移来移去必定耗费大量能量。另外,海上动力定位精度的要求也随任务而异,铺管船在海上作业时,往往要定位到1~2米的精度,而海上钻控船或采矿船则往往随水深而异,仅需要定位到水深的3~5%,即同一条船在执行不同任务时会有不同的定位精度要求,PID系统则难于自适应不同定位精度的要求。
英国专利GB2198553A(公开日1988年7月15日)虽然描述了一种可抵消风力、流力的前馈式控制系统,但它需要多个探头布置于船的四角约500~1000米的海面上,以此来探知风向、风速、流向、流速、波向、波高的改变,即未脱离系泊于浮筒,这种前馈式控制不能抵消波浪的漂力,且信息处理是依赖于计算机的离线学好船舶动力响应并贮存于数据库。
本发明的目的是提供一种能自适应于船的装载变化及海况变化,能提高动力定位精度,大大降低定位能耗的前馈式动力定位神经网络控制系统及其方法。
本发明的神经网络控制系统包括一台计算机、一台电位放大器、模拟/数字转换器、数字/模拟转换器、滤波器、测位系统、执行机构、一套经在线学习能预报下一个或几个时间点环境力的学习器和起调节作用的优化—决策器,执行机构是一套由2个或多个全方位回转螺旋桨或3个以上不在同一条直线布置的推进器组成,测位系统是卫星定位仪或水声定位系统。
本发明神经网络控制系统的定位方法是这样的,测位系统不断将船的地理位置信息经模拟/数字转换器输送给滤波器,滤波器采用无相位差滤波消除高频成份后,将低于波浪频率部分传递给学习器,学习器的神经网络根据该信息及执行机构地控制量,采用人工神经网络自我学习算法,不断地作在线学习,掌握船舶在该装载与海况下的动力定位的控制规律,不断向优化—决策器预报下一时刻船的控制力与位置,优化—决策器依靠从学习器得到的控制规律及预报,用“指导性的人工模拟退火”(Guided Evolutinary Simulated Annealing)全局优化算法调节控制参数,选择相对最优的控制力信号,该信号经过数字/模拟转换器产生模拟信号并经信号放大器增强后输出给执行机构,执行机构按指令执行,将船移到指定位置。
图1是神经网络控制系统定位方法示意图。
图2是执行机构示意图。
图3是学习器神经网络示意图。
图4是学习器激励函数示意图。
图5是优化—决策器的神经网络示意图。
图6是模拟实验结果示意图。
下面结合附图对本发明加以说明。
图2说明了两个全方位螺旋浆可以得到的控制力fx、fy和力矩mz,其中:fx=T1cosθ1+T2cosθ2fy=T1sinθ1+T2sinθ2mz=(y2tanθ1-x1)·T1sinθ1]]>+(y1tanθ2-x2)·T2sinθ2]]>
控制系统可变化的参数有4个,即T1、T2、θ1、θ2,而方程式有3个,因此可以选择较好的组合或固定其中一个参数而解其它三个参数。图3给出的学习器函数型链接神经网络(Functional Link Net),其中向量x2,……xN},而x1,x2…xm……xN等为输入量,代表各个时刻船位y与控制力u,y与u均有3个分量,为若干个随机向量,b1,……bj为若干个随机标量,是对输入量的增强信息,每给定一个k值就有一组由图1所示的模式,除当前时刻以外,连续取4个代表过去的k值,就有5个模式。图中的y(k+1)附合下式:
其中各量均为已知,αm、βj是特定的权系数,学习器利用5个模式的输入量及增强信息经过学习,使得网络对每个模式的输入都非常接近于每个学习模式的目标y(k+1),也就是说,训练要使之成为船舶漂移动力学的仿真器,每给定一个输入模式(多维输入空间)就能“映象”到一个一维输出空间而得到,逐步接近于目标y(k+1),训练的方法是不断地变更αm,βj,并按最速下降法使误差:E=[y(k+1)-y^(k+1)]2]]>趋向于最小。一旦学习器学习好,则给定一组k为“当前时刻”的输入模式,就会得出一组k+1时刻的预报输出。
本发明每控制一步,就重新训练学习器一遍,因为学习器是船舶动力学的仿真器,所以本发明的控制系统可以自适应于模式的变化,不论船的装载有什么变化,海况有什么变化,学习器均能学好变化后的船舶动力学。但是学习器所输出的预报船位,不一定是所需要的船位yd(k+1),所需要的船位yd(k+1)在此是广义的,它可以指船的原始位置,也可以是任一个就近的指定位置。例如船在采海底矿产时或者船在铺设海底油管时,都需要慢慢地移动,yd(k+1)就可以是轨迹上的各个点,每次还需要一个“优化—决策”环节来调整学习器发出的信息,选择相对最佳的模式使误差:E1=[yd(k+1)-y^(k+1)]2]]>趋向于最小。
优化—决策器的神经网络如图5所示,它与图3学习器的神经网络相似,在此把目标定为yd(k+1),开始时学习器神经网络输出,它与yd(k+1)间存在误差E1,优化—决策的过程就是变更u(k)但不变化已经学习好的各个权系数,使E趋向于最小,具体地说就是在优化—决策环境中改变控制力,使预报的船舶位置与指定船舶位置的误差最小,调节好了的控制力信号使执行机构产生所需的T1、T2、θ1、θ2,并给出作用于船上的fx、fy、mz以调整下一时刻船的位置到指定的位置。这里,优化—决策器是采用自生成优化算法—指导性的人工模拟退火全局优化算法,使船逼近指定目标yd(k+1),u(k)的变化以t为代表,写成u(k,t)令u(k,t)服从下式的规律:∂u(k,t)∂t=η·∂y^(k+1,t)∂u(k,t)·[yd(k+1)-y^(k+1,t)]]]>其中η是一个比例常数,(在0与1之间任选)。则∂E1∂t=-2η(∂u(k,t)∂t)2≤0]]>
可见E1将随着每一次t的迭代而单调下降趋于最小。
图6表示了采用本发明对船舶模型进行定位模拟试验的结果。图中用“——”表示的曲线代表控制力,用“……”表示的曲线代表波浪力,从图中可看到,波浪漂力Fx、Fy、Mz的预报与本发明所产生的优化后控制力fx、fy、mz的预报较为接近,这说明了本发明的控制系统是前馈控制,可以很好地抵消波浪外力的干扰,达到定位的高精度、低能耗。
本发明的实施是:将测位系统1(这里采用DGPS卫星测位探头)、Kalman滤波器2、模拟/数字转换器8、PC486计算机(内含神经网络学习器软件3和优化—决策器软件4)、数字/模拟转换器10、电位放大器9、执行机构5(这里采用全回转推进器6、7)用信号线按图1的顺序连接好后,按如下三大步骤实施。
1.用神经网络学习器学习船在海洋中的动力学规律:
通过安装在船上的DGPS(或其它测位设备)获取当前船的绝对位置,通过信号线输入进计算机(PC486),计算机控制模拟/数字转换器定时采集船的位置信号,采样周期在1~10秒之间(位置信号送给滤波器,消除高频成分,而仅保留其低频低于波浪频率)、定位控制之前预设置一相对坐标系,一般取定位点为坐标原点,X-Y坐标面为海平面,Z轴垂直向上,X轴正向沿船尾指向船首,Y轴垂直X轴;通过坐标转换将船的绝对坐标位置转换到相对坐标系上的位置,并对坐标值用特征值进行规—化,从而得到位置向量Δx、Δy分别是船的相对坐标值,Δφ为相对航向角,并且:-1≤Δx,Δy,Δφ≤1。另外,将第二步所产生的控制力及控制力矩向量fy,mz},其中fx,fy是分别沿x,y方向作用在船上的控制力,mz为绕Z轴的控制力矩,用特征值进行规一化,使得:-1≤fx,fy,mz≤1。现在将船的过去历经的位置及控制量作为输入量,当前时刻的船的位置作为输出量,形成一组输入/输出数据对,用函数型链接神经网络进行学习(见图3、图4),从而找出输入/输出之间的映射关系,使得神经网络学习器3可以很好模拟船在控制力作用下的漂移动力学关系。这一动力学关系建立了当前一段时间历程的控制量及船的位置与下一时刻的船的位置之间的关系,也就是说学习好的神经网络可以来预测下一时刻船可能抵达的位置;反过来,如我们要求船在下一时刻定位到所要求的位置,可以反推出当前时刻应该作用多大的控制力。上述的过程是连续地在进行,每控制一步就重新训练学习器一遍。2.用神经网络作非直接控制
定位位置设置在坐标点要让船定位也就是使量函数E=Σi=1q[y^i(k+1)-yd,i(k+1)]2]]>最小,其中是神经网络对下一时刻船的位置估算值。为此引入“优化—决策”器来调整控制量,使能量函数E1趋向最小。“优化—决策”器的网络见图5,它与图3相似,但在此把目标定为,优化—决策的神经网络如图5所示,它与图3学习器的神经网络相似,在此把目标定为yd(k+1),开始时学习器神经网络输出,它与yd(k+1)间存在误差E1,优化—决策的过程就是变更u(k)但不变化已经学习好的各个权系数,使E趋向于最小,具体地说就是在优化—决策环境中改变控制力,使预报的船舶位置与指定船舶位置的误差最小,调节好了的控制力信号使执行机构产生所需的T1、T2、θ1、θ2,并给出作用于船上的fx、fy、mz以调整下一时刻船的位置到指定的位置。3.控制执行
将“优化—决策”器产生的控制信号,根据不同的执行机构进行控制量的转换,作为实例采用二个全回转的推进器作为执行机构,见图2,“优化—决策”器产生的控制量为fx、fy、mz,而执行机构需要的控制量为T1、T2、θ1、θ2,设定θ1=θ2=θ,则有:θ=tan-1fyfx]]>T1=F+mz/sin(θ-φ)y12]]>T2=F-mz/sin(θ-φ)y22]]>其中:F=fx2+fy2]]>为控制力合力,φ为船的航向角。
然后将T1,T2,θ通过数字/模拟转换器,产生模拟控制信号,并经过信号放大器作用到执行机构(全回转推进器)。
本发明的控制系统很容易加装于已有动力定位设备的船上,它不需要在海面上布置多个漂浮的探头。本发明方法能较好地前馈抵消即将到来的环境力(含风、浪、流等力)对船体的作用,能以最小的误差与冲击接近指定位置,大大降低能耗;能自适应于船的装载变化、任务变化及海况变化,故能提高动力定位精度。