一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于T-S模糊神经网络的仿蝠鲼航行器深度控制方法

2022-08-17 09:41:40 来源:中国专利 TAG:

基于t-s模糊神经网络的仿蝠鲼航行器深度控制方法
技术领域
1.本发明水下航行器运动控制领域,涉及一种属于仿蝠鲼航行器深度控制的方法,具体来说涉及的是一种基于t-s模糊神经网络的仿蝠鲼航行器深度控制方法。


背景技术:

2.水下无人航行器作为海洋科技中不可或缺的一部分,在军事、民用、科技等众多领域发挥着重要的作用。传统的水下航行器主要采用螺旋桨进行推进,但面对日益复杂的任务需求,传统的采用螺旋桨进行推进的航行器暴露出如能耗大、体积大、效率低等诸多的不足。
3.仿生科学研究为开发新型水下航行器解决传统航行器的问题提供了一个新思路。仿蝠鲼航行器是一种采用中央鳍/对鳍模式进行推进的新型仿生航行器,具有体积小、噪声小、机动性高等诸多优点。
4.仿蝠鲼航行器的深度控制对于航行器的水中作业具有重要的意义。现有的对于水下航行器进行深度控制的方法主要还是针对传统的采用螺旋桨进行推进的航行器。但由于仿蝠鲼航行器和传统航行器在结构和推进机理上的差异,适用于传统航行器的深度控制方法很难直接用于仿蝠鲼航行器的深度控制。
5.发明专利cn113050666a所提及的水下航行器深度控制方法依赖于水下航行器的动力学模型。但由于仿蝠鲼航行器是一个强非线性、强耦合的复杂系统,建立其动力学模型非常困难,所以此类方法对于仿蝠鲼航行器的深度控制并不适用。


技术实现要素:

6.要解决的技术问题
7.为了避免现有技术的不足之处,本发明提出一种基于t-s模糊神经网络的仿蝠鲼航行器深度控制方法,解决的问题是仿蝠鲼航行器的深度控制。
8.由于仿蝠鲼航行器的尾鳍偏转角度和方向的变化可以使作用于仿蝠鲼航行器的俯仰力矩的大小和方向产生变化,利用此俯仰力矩可以实现仿蝠鲼航行器的深度控制,所以本发明中通过改变仿蝠鲼航行器的尾鳍角度来实现深度控制。
9.技术方案
10.一种基于t-s模糊神经网络的仿蝠鲼航行器深度控制方法,其特征在于步骤如下:
11.步骤1:将仿蝠鲼航行器游动过程中不同时刻的深度偏差ed、深度偏差率ecd,以及对应的尾鳍角度γ,构建t-s模糊神经网络进行训练的训练集与测试集;
12.步骤2:t-s模糊神经网络包括输入层、模糊化层、模糊推理层、归一层和输出层;
13.第一层为输入层并与输入向量连接,将输入值传送到节点,该层的节点数等于输入向量的维数;
14.第二层为模糊化层,其中每个节点代表一个模糊语言变量值,通过隶属度函数计算每个输入属于各语言变量值模糊集合的隶属度;
15.所述隶属度函数:
[0016][0017]
其中,n是输入个数;mi是xi的模糊分割数;c
ij
是隶属度函数的中心值;σ
ij
是隶属度函数的宽度,c
ij
和σ
ij
均为可调参数;
[0018]
第三层为模糊推理层,其中每个节点代表一条模糊规则,计算每条规则的适应度;所述每条规则的权重αj采用乘积法:
[0019][0020]
其中,i1∈{1,2,

,m1},i2∈{1,2,

,m2},

,in∈{1,2,

,mn};j=1,2,

,m;
[0021]
采用加权平均法计算模糊模型的输出值y:
[0022][0023]
式中αi表示第i条规则在总输出中所占分量轻重的比例即权重,yi表示第i条规则的输出;
[0024]
第四层为归一层,其中每个节点与第三层的节点对应连接,节点数与第三层相同,进行归一化计算;
[0025]
第五层为输入层,其中每个节点代表一个清晰化输出,进行清晰化计算;
[0026]
步骤3:以步骤1的训练集对t-s神经网络进行学习训练,学习训练时,不断更新第二层中隶属度函数的中心值c
ij
,宽度值σ
ij
和第五层中的连接权值和ωi,步骤如下:
[0027]
首先取误差代价函数为:
[0028][0029]
式中,y
di
表示期望输出,yi表示实际输出;
[0030]
然后根据梯度下降法,参数按照如下公式进行修改:
[0031][0032][0033][0034]
式中,β>0为学习率;
[0035]
步骤4:利用构建的测试集对训练后的t-s神经网络进行测试,将通过测试的基于t-s模糊神经网络作为深度控制器用于仿蝠鲼航行器进行尾鳍角度的控制;将仿蝠鲼航行器游动过程中传感器采集到的深度偏差和深度偏差率作为输入,尾鳍角度作为输出,使舵机按照输出的尾鳍角度转动相应的角度,改变航行器俯仰力矩,实现仿蝠鲼航行器的深度控制。
[0036]
有益效果
[0037]
本发明提出的一种基于t-s模糊神经网络的仿蝠鲼航行器深度控制方法,首先采集航行器航行过程中的深度偏差、深度变化率作为神经网络训练的输入,并将相应的尾鳍角度作为神经网络训练的输出,以此构建用于t-s模糊网络训练的训练集与测试集;然后建立了t-s型模糊神经网络,先利用训练集对神经网络进行训练,后利用测试集对训练所得的神经网络进行测试;最后将通过测试的t-s神经网络控制器用于仿蝠鲼航行器游动过程中尾鳍角度的控制,使航行器的尾鳍角度根据控制值进行实时调整,最终达到对航行器进行深度控制的目的。通过实验表明,所提出的基于t-s模糊神经网络的仿蝠鲼航行器深度控制的方法具有较高的准确性和可靠性,该方法在航行器深度控制方面具有实用价值。
[0038]
本发明具有以下有益效果:
[0039]
1.本发明中所提供的基于t-s模糊神经网络的仿蝠鲼航行器深度控制方法,为仿蝠鲼航行器深度控制提供了一种有效的方法。
[0040]
2.本发明提供的方法通过建立t-s模糊神经网络计算尾鳍的控制角度来实现航行器的深度控制,具有较高的效率和预测精度,提高了仿蝠鲼航行器深度控制的稳定性和可靠性。
[0041]
3.本发明利用样机进行实验,实现了对仿蝠鲼航行器深度的有效控制,得出航行器定深曲线图。验证了在真实工作环境中本发明所提供方法的可行性和真实性。
附图说明
[0042]
图1为本发明的控制框图;
[0043]
图2为本发明t-s模糊神经网络的结构图;
[0044]
图3为实验所得航行器定深曲线图;
具体实施方式
[0045]
现结合实施例、附图对本发明作进一步描述:
[0046]
该方法的具体实现步骤如下:
[0047]
将仿蝠鲼航行器在水池中进行游动时采集到的深度偏差ed,深度偏差率ecd作为模型的训练输入,并将相应的尾鳍角度γ作为模型的训练输出。因此本发明的输入层节点有两个,输出层节点有一个。本发明中的t-s模糊神经网络一共有五层,如图2所示。
[0048]
采用t-s模糊神经网络进行仿蝠鲼航行器的深度控制的具体步骤如下:
[0049]
1.建立训练集。
[0050]
利用仿蝠鲼航行器进行水池游动实验,利用航行器搭载的传感器采集航行器游动过程中不同时刻的深度偏差ed、深度偏差率ecd,以及对应的尾鳍角度γ。其中用实验获取的深度偏差ed、深度偏差率ecd构成x=[ed,ecd]作为网络输入,尾鳍角度γ作为网络期望输出y
di
。以此构建t-s模糊神经网络进行训练的训练集与测试集。
[0051]
2.建立t-s模糊神经网络并进行训练与测试。
[0052]
(1)选取隶属度函数与权重计算
[0053]
假设有输入x=[x1,x2,...,xn],首先根据隶属度函数计算每个输入变量的隶属度
[0054]
本发明的隶属度函数采用高斯函数,如下式所示:
[0055][0056]
其中,n是输入个数;mi是xi的模糊分割数;c
ij
是隶属度函数的中心值;σ
ij
是隶属度函数的宽度,c
ij
和σ
ij
均为可调参数。
[0057]
每条规则的权重αj采用乘积法进行计算,如下式所示:
[0058][0059]
其中,i1∈{1,2,

,m1},i2∈{1,2,

,m2},

,in∈{1,2,

,mn};j=1,2,

,m;
[0060]
采用加权平均法计算模糊模型的输出值y:
[0061][0062]
式中αi表示第i条规则在总输出中所占分量轻重的比例(权重),yi表示第i条规则的输出。
[0063]
(2)t-s模糊神经网络构建
[0064]
根据t-s模糊算法构建的t-s神经网络如图2所示。t-s模糊神经网络共有5层包括:输入层、模糊化层、模糊推理层、归一层和输出层
[0065]
第一层为输入层直接和输入向量连接,它的作用是将输入值传送到节点,该层的节点数等于输入向量的维数。
[0066]
第二层为模糊化层,该层的每个节点代表一个模糊语言变量值,它的作用是通过隶属度函数计算每个输入属于各语言变量值模糊集合的隶属度。
[0067]
第三层为模糊推理层,每个节点代表一条模糊规则,该层的作用是计算每条规则的适应度。
[0068]
第四层为归一层,该层的每个节点与第三层的节点对应连接,节点数与第三层相同。其作用是进行归一化计算。
[0069]
第五层为输入层,每个节点代表一个清晰化输出。它的作用是进行清晰化计算。
[0070]
(3)学习算法选取
[0071]
由于t-s模糊神经网络中输入值的模糊分割数是预先确定的,因此在训练的过程中只需要不断更新第二层中隶属度函数的中心值c
ij
,宽度值σ
ij
和第五层中的连接权值和ωi。本发明通过梯度下降法来确定神经网络的参数以得到理想的输入和输出的映射关系,具体步骤如下。
[0072]
首先取误差代价函数为:
[0073][0074]
式中,y
di
表示期望输出,yi表示实际输出。
[0075]
然后根据梯度下降法,参数按照如下公式进行修改:
[0076]
[0077][0078][0079]
式中,β>0为学习率。
[0080]
(4)t-s模糊神经网络的训练与测试
[0081]
首先利用构建的训练集对t-s神经网络进行训练,再利用构建的测试集对训练后的t-s神经网络进行测试,验证其有效性。
[0082]
t-s模糊神经网络训练主要包括以下步骤:
[0083]
(a)初始化神经网络的基本参数,包括网络输入层、输出层、中间层的节点个数、算法最大迭代次数、学习率β、隶属度函数的中心值c
ij
和宽度值σ
ij

[0084]
(b)对于训练集中的每组输入参数通过神经网络计算对应的实际输出yi。
[0085]
(c)根据实际输出yi和期望输出y
di
的误差更新第二层中隶属度函数的中心值c
ij
,宽度值σ
ij
,和第五层中的连接权值和ωi。
[0086]
(d)判断结束条件,若迭代次数达到设定的算法最大迭代次数,训练结束;否则返回步骤(b)继续进行训练。
[0087]
利用测试集对训练后得到的t-s神经网络进行验证,以确定所得到的t-s神经网络的有效性。
[0088]
3、将通过测试的基于t-s模糊神经网络的深度控制器用于仿蝠鲼航行器进行尾鳍角度的控制。利用最终得到的基于t-s模糊神经网络的控制器进行仿蝠鲼航行器的深度控制。航行器游动过程中传感器采集仿蝠鲼航行器的深度数据,由下位机计算得到深度偏差和深度偏差率将其作为控制器的输入,得到对应的尾鳍角度控制值。将控制值送到尾鳍舵机,使舵机转动相应的角度,以此控制仿蝠鲼航行器的深度。
[0089]
利用样机在水池中进行实验以验证本发明提出的基于t-s神经网络的仿蝠鲼航行器深度控制方法。通过实验得到如图3所示的深度变化曲线。实验结果表明,基于t-s的模糊神经网络的控制器可对仿蝠鲼航行器的深度进行有效的控制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献