一种气垫船安全边界判定方法转让专利

申请号 : CN201510593660.X

文献号 : CN105184001B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 丁福光徐玉杰付明玉张丽娜王成龙林孝工刘向波王元慧

申请人 : 哈尔滨工程大学

摘要 :

本发明提供的是一种气垫船安全边界判定方法。基于Lyapunov稳定性理论和实际气垫船操纵特性,给出气垫船状态稳定判断条件。然后,根据判断条件将气垫船工作空间内的状态分为稳定点与不稳定点两类,作为样本空间训练BP神经网络得到稳定区域判断模型。最后,利用二分法和BP神经网络稳定区域判断模型来搜索工作空间,进而得到安全边界。在气垫船实时控制过程中,安全边界可以作为危险工况中应急控制投入的判断依据,保障气垫船安全航行。本发明通过计算出在当前控制律下的气垫船的安全边界,能够减少操纵人员的误判而导致的气垫船失稳,还可以降低操纵人员的工作强度和精神负担,具有很大的实用价值。

权利要求 :

1.一种气垫船安全边界判定方法,其特征是:

(1)获取样本空间,具体包括以下步骤:

(1.1)获取气垫船的状态信息,并将侧滑角、回转角速度、横倾角、横倾角速度、纵倾角和纵倾角速度六个参量分别用变量x1,x2,x3,x4,x5,x6表示,记向量X=[x1,x2,x3,x4,x5,x6]T,气垫船当前的控制律记为τ,气垫船的模型记为 其中X(0)表示初始状态,t表示时间;

(1.2)根据状态的工作范围选取初始状态序列,状态的工作范围表示如下:ximin<xi<ximax,i=1,…,6

ximin,ximax分别为状态变量的工作下界和上界,序列个数采用以下的公式确定:

其中,εi为状态数据的最大偏差;

按照在工作空间内均匀分布取点的原则,得到初始状态序列{X(0)};

(1.3)将(X(0),τ)带入气垫船模型,运行时间Ts后判断系统状态是否满足下列条件:||xi||<σi,i=1,3,5

其中σi>0,

若满足上述条件,则在初始状态X(0)和控制律τ下气垫船是稳定的,对应的逻辑值为Y=0;否则,则气垫船是不稳定的,对应的逻辑值为Y=1,将初始状态序列{X(0)}及对应的逻辑值序列{Y},形成样本空间{X(0),Y},作为神经网络的训练样本;

(2)利用样本空间对BP神经网络进行训练,使得任意工作范围内的初始状态输入,BP神经网络都能够得到的系统是否稳定的逻辑值;

(3)任意给定工作范围内的六个参量的状态,输入到训练好的BP神经网络,根据神经网络的输出,采用二分法寻找工作范围内的稳定状态的边界值。

2.根据权利要求1所述的气垫船安全边界判定方法,其特征是:所述神经网络选择BP神经网络,输入层、隐含层和输出层的结构选择为4×10×10×1,隐含层神经元的激活函数选为tansig函数,输出层神经元的激活函数选为logsig函数,网络训练函数采用Levenberg-Marquardt算法。

3.根据权利要求2所述的气垫船安全边界判定方法,其特征是采用二分法和BP神经网络计算气垫船安全边界,具体包括如下步骤:其中,X0为输入的工作范围内的任意初始状态;X1,X2,X3为辅助变量;V0,V1,V3为神经网络输出的逻辑值;Xs为安全限界的状态量,步骤1:初始化状态变量X1=X0;

步骤2:状态变量X1输入BP网络,若输出V0=0,执行步骤3;若输出V0=1,执行步骤4;

步骤3:状态X1=X1+hX0,将X1输入BP网络,若输出V1=0,重复执行,直到输出V1=1;若输出V1=1,令X2=X1,X1=X1-hX0;

步骤4:令X1=X1-hX0,将X1输入BP网络,若输出V1=0,令X2=X1+hX0,若输出V1=1,重复执行;

步骤5:采用二分法,令 将X3输入BP网络,若输出V3=0,判断||X3-X2||≤e是否成立,若成立,令XS=kX3,否则,令X1=X3,重复步骤5;若输出V3=1,判断||X3-X1||≤e是否成立,若成立令XS=kX1,否则令X2=X3,重复步骤5;

步骤6:令hS=||X0||/||XS||,判断hS<1是否成立,若成立执行步骤7;若不成立,确定区域为不安全区域;

步骤7:判断|1-hS|≤e是否成立,若成立,确定区域为安全区域;若不成立,确定区域为安全区域边界;

步骤8:结束。

说明书 :

一种气垫船安全边界判定方法

技术领域

[0001] 本发明涉及一种气垫船安全边界的判定方法,特别是基于神经网络的气垫船安全边界的离线计算方法。

背景技术

[0002] 气垫船在航行操纵过程中,在风浪扰动下或围裙破损或操控设备故障和驾驶员操纵不当等情况下,可能会出现不同的风险,如高速埋首、低速翻船、高速甩尾等。若驾驶员操纵不当时,气垫船航行时的危险状态表现为:随着回转角速度的增大,侧滑角逐渐增大,随后出现横倾角和纵倾角迅速增大。因此,为保证航行安全性,需要计算影响航行安全主要变量的安全边界,判断气垫船在当前状态下是否进行应急控制。
[0003] 在国外公开文献中,美国LCAC艇规定的航行安全限界为:最高航速纵倾角一般不应低于1°,当航速50kn最大侧滑角为15°,最大回转角速度为为2度/秒。俄罗斯气垫船航行危险工况限界为:其低速14kn时能够打满舵,限制的最大回转角速度为3.5度/秒,最大侧滑角为20度;当航速为35kn时舵角限制为5度,最大回转率限制在1.2度/秒,最大侧滑角为2度;40kn时不能长时间打舵。
[0004] 在国内公开文献中,根据实船试验数据,航行时各参数的安全限界为:横倾角的正常范围在0.5度~2.5度,初始纵倾角应大于。正常工作状态下,随气垫船的航速提高,其纵倾角也会变大,甚至可达。在30kn时回转角速度应不超过4度/秒,侧滑角不超过20度。
[0005] 上述安全限界是针对人工操纵设定的,并没有考虑控制律的影响,当利用自动驾驶系统对气垫船进行操控时需要提供在当前控制律下状态的安全边界,为是否进行应急控制提供依据。

发明内容

[0006] 本发明的目的在于提供一种为气垫船是否进行应急控制提供依据,能够减少驾驶人员的误判导致的气垫船事故,提高航行稳定性的气垫船安全边界判定方法。
[0007] 本发明的目的是这样实现的:
[0008] (1)获取样本空间,根据气垫船的回转角速度、侧滑角、横倾角、横倾角速度、纵倾角和纵倾角速度六个参量的工作范围,按照均匀分布的原则任意取状态序列,将其作为气垫船的初始状态,并带入控制律对设定时间后的系统稳定性进行判定,得到系统是否稳定的逻辑值序列,将初始状态序列和对应的系统是否稳定的逻辑值序列作为样本空间;
[0009] (2)利用样本空间对BP神经网络进行训练,使得任意工作范围内的初始状态输入,BP神经网络都能够得到的系统是否稳定的逻辑值;
[0010] (3)任意给定工作范围内的六个参量的状态,输入到训练好的BP神经网络,根据神经网络的输出,采用二分法寻找工作范围内的稳定状态的边界值。
[0011] 气垫船在不同状态下和不同控制律下的稳定性是不同的,本发明将气垫船当前控制律带入模型计算出状态稳定性的逻辑值,然后将初始状态和逻辑值作为神经网络的训练样本。为了使BP神经网络的输出能够准确判定系统的稳定性,需要选择合适的网络结构和学习函数。本发明中神经网络的建立和二分法寻安全边界是核心。
[0012] 本发明根据Lyapunov稳定性理论和实际气垫船操纵特性,针对影响气垫船航行稳定性的回转角速度、侧滑角、横倾角、横倾角速度、纵倾角和纵倾角速度六个主要参量设计了稳定性的判断条件,并利用工作空间的离散状态及其稳定性对神经网络进行训练,实现对在任意状态输入下系统稳定性的判断,然后运用二分法计算得到气垫船当前状态下的安全边界。
[0013] 本发明相对现有技术具有如下的优点及效果:气垫船在航行过程中其状态变化很快,如果由操作人员判断系统稳定性,一方面会给驾驶人员造成很大的工作压力,另一方面由于时间紧迫很容易造成误判。本发明提出的气垫船安全边界计算方法可以根据当前的控制律和气垫船模型计算出状态的稳定边界,减少了驾驶人员的压力,另外本发明的计算方法能够实现离线计算,因此提高了驾驶人员的工作效率和气垫船的自动化水平。
[0014] 在气垫船实时控制过程中,安全边界可以作为危险工况中应急控制投入的判断依据,保障气垫船安全航行。本发明通过计算出在当前控制律下的气垫船的安全边界,能够减少操纵人员的误判而导致的气垫船失稳,还可以降低操纵人员的工作强度和精神负担,具有很大的实用价值。

附图说明

[0015] 图1获取样本空间的流程图。
[0016] 图2隐含层结构为10×10的BP神经网络训练效果图。
[0017] 图3气垫船稳定情况下的神经网络输出曲线。
[0018] 图4气垫船不稳定情况下的神经网络输出曲线。
[0019] 图5基于BP神经网络和二分法的气垫船安全边界算法程序流程图。
[0020] 图6气垫船水平面安全限界。

具体实施方式

[0021] 下面结合附图对本发明作进一步的详细描述。
[0022] 本发明主要包括获取样本空间、训练BP神经网络以及采用二分法计算安全边界。
[0023] 结合图1,获取样本空间的流程步骤如下:
[0024] 1.获取气垫船的状态信息,并将侧滑角、回转角速度、横倾角、横倾角速度、纵倾角和纵倾角速度六个参量分别用变量x1,x2,x3,x4,x5,x6表示,记向量X=[x1,x2,x3,x4,x5,x6]T,气垫船当前的控制律记为τ,气垫船的模型记为 其中X(0)表示初始状态,t表示时间;
[0025] 2.根据状态的工作范围选取初始状态序列。状态的工作范围表示如下:
[0026] ximin<xi<ximax,i=1,…,6
[0027] ximin,ximax分别为状态变量的工作下界和上界,
[0028] 序列个数采用以下的公式确定:
[0029]
[0030] 其中,εi为状态数据的最大偏差。
[0031] 按照在工作空间内均匀分布取点的原则,得到初始状态序列{X(0)}。
[0032] 3.将(X(0),τ)带入气垫船模型,运行时间Ts后判断系统状态是否满足下列条件:
[0033] ||xi||<σi,i=1,3,5
[0034]
[0035] 其中σi>0,
[0036] 若满足上述条件,则认为在初始状态X(0)和控制律τ下气垫船是稳定的,对应的逻辑值为Y=0;否则,则认为气垫船是不稳定的,对应的逻辑值为Y=1。将初始状态序列{X(0)}及对应的逻辑值序列{Y},形成样本空间{X(0),Y},作为神经网络的训练样本。
[0037] 为提高模型的预测精度,根据气垫船数据特点,神经网络选择BP神经网络,输入层、隐含层和输出层的结构选择为4×10×10×1,隐含层神经元的激活函数选为tansig函数,输出层神经元的激活函数选为logsig函数,网络训练函数采用Levenberg-Marquardt算法。通过离线的对样本空间进行训练,训练好的神经网络就能够根据气垫船的状态X(0)输出是否稳定的逻辑值V。
[0038] 结合图5,采用二分法和BP神经网络计算气垫船安全边界的流程具体步骤如下,其中,X0为输入的工作范围内的任意初始状态;X1,X2,X3为辅助变量;V0,V1,V3为神经网络输出的逻辑值;Xs为安全限界的状态量。
[0039] 步骤1:初始化状态变量X1=X0;
[0040] 步骤2:状态变量X1输入BP网络,若输出V0=0,执行步骤3;若输出V0=1,执行步骤4;
[0041] 步骤3:状态X1=X1+hX0,将X1输入BP网络,若输出V1=0,重复执行,直到输出V1=1;若输出V1=1,令X2=X1,X1=X1-hX0;
[0042] 步骤4:令X1=X1-hX0,将X1输入BP网络,若输出V1=0,令X2=X1+hX0,若输出V1=1,重复执行;
[0043] 步骤5:采用二分法,令 将X3输入BP网络,若输出V3=0,判断||X3-X2||≤e是否成立,若成立,令XS=kX3,否则,令X1=X3,重复步骤5;若输出V3=1,判断||X3-X1||≤e是否成立,若成立令XS=kX1,否则令X2=X3,重复步骤5;
[0044] 步骤6:令hS=||X0||/||XS||,判断hS<1是否成立,若成立执行步骤7;若不成立,确定区域为不安全区域;
[0045] 步骤7:判断|1-hS|≤e是否成立,若成立,确定区域为安全区域;若不成立,确定区域为安全区域边界;
[0046] 步骤8:结束。