CN110286592B - 一种基于bp神经网络的机器鱼多模态运动方法及系统 - Google Patents

一种基于bp神经网络的机器鱼多模态运动方法及系统 Download PDF

Info

Publication number
CN110286592B
CN110286592B CN201910576714.XA CN201910576714A CN110286592B CN 110286592 B CN110286592 B CN 110286592B CN 201910576714 A CN201910576714 A CN 201910576714A CN 110286592 B CN110286592 B CN 110286592B
Authority
CN
China
Prior art keywords
cpg
neural network
fish
robot fish
model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910576714.XA
Other languages
English (en)
Other versions
CN110286592A (zh
Inventor
汪明
张燕鲁
常征
卫正
逯广浩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Jianzhu University
Original Assignee
Shandong Jianzhu University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Jianzhu University filed Critical Shandong Jianzhu University
Priority to CN201910576714.XA priority Critical patent/CN110286592B/zh
Publication of CN110286592A publication Critical patent/CN110286592A/zh
Application granted granted Critical
Publication of CN110286592B publication Critical patent/CN110286592B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)

Abstract

本公开提出了一种基于BP神经网络的机器鱼多模态运动方法及系统,包括:建立CPG模型:对四关节具有胸鳍的机器鱼进行动力学建模,令尾鳍CPG单向抑制胸鳍CPG,利用非线性振荡器模型作为CPG神经元,确定左右两边输入激励,下行和上行相位耦合系数,上行和下行耦合系数权重,对应各个关节的CPG频率;建立BP神经网络模型:基于CPG模型得到关节角度的变化,将关节角度变化值存储为数据包进行BP神经网络训练,并将训练好的数据发送到仿生机器鱼的控制器上,利用CPG信号驱动各关节的摆动,进行机器鱼直游转弯运动。本公开利用BP神经网络学习机器鱼的多模态运动,最终实现BP神经网络学习机器鱼多模态运动的过程,提高了机器鱼系统的自主性与适应性。

Description

一种基于BP神经网络的机器鱼多模态运动方法及系统
技术领域
本公开涉及运动控制技术领域,特别是涉及一种基于BP神经网络的机器鱼多模态运动方法及系统。
背景技术
近年来,随着陆地资源匮乏日益严重,人们越来越多的关注到丰富的海洋资源。由于原有的水下检测、作业、运载装置难以满足复杂水下作业任务的需求,因此加速了水下机器人的研发工作。仿生机器鱼作为鱼类推进机理和机器人技术的结合点,为研制新型的水下航行器提供了一种新思路,具有重要的研究价值和应用前景。
随着社会的进步与技术的发展,人工智能与控制技术的整合为仿生机器人技术创造了新的研究机会。学习和优化作为两个主要因素,在减少模型不确定性和提高系统性能方面发挥着重要作用。尤其是仿生学习方法,为基于神经网络的游泳控制提供了综合工具,从而保证了在机器鱼上产生游动步态的生物学基础。实际的水下环境通常是复杂,苛刻,甚至危险,更高的智能可以大大提高机器鱼的生存。且仿生机器鱼的未来应用将要求它们在未知和非结构化的水下环境中游泳。为此,机器鱼感知水下环境的能力也是必不可少的。大多数现有研究倾向集中于运动控制,而对水下环境感知的关注则较少。
因此,未来机器鱼系统的自主性和适应性水平还需大大提高。现有技术很少研究机器鱼在非线性结构环境中的自由运动,这对于运动控制和运动规划都很重要。
发明内容
本说明书实施方式的目的是提供一种基于BP神经网络的机器鱼多模态运动方法,通过学习机器鱼关节角度的变化控制机器鱼直游和转弯运动,对机器鱼避障起着重要作用。
本说明书实施方式提供一种基于BP神经网络的机器鱼多模态运动方法,通过以下技术方案实现:
包括:
建立CPG模型:对四关节具有胸鳍的机器鱼进行动力学建模,令尾鳍CPG单向抑制胸鳍CPG,利用非线性振荡器模型作为CPG神经元,确定左右两边输入激励,下行和上行相位耦合系数,上行和下行耦合系数权重,对应各个关节的CPG频率;
建立BP神经网络模型:基于CPG模型得到关节角度的变化,将关节角度变化值存储为数据包进行BP神经网络训练,并将训练好的数据发送到仿生机器鱼的控制器上,利用CPG信号驱动各关节的摆动,进行机器鱼直游转弯运动。
进一步的技术方案,将CPG模型得到关节角度的数据进行训练,得到波形数据,将得到的数据与原有数据进行比对,检验误差结果。
进一步的技术方案,利用非线性振荡器模型作为CPG神经元,CPG神经元的输入量为激励,并分为左激励dl和右激励dr,经饱和函数后得到振荡器参数fi和Ai,分别驱动机器鱼左侧身体和右侧身体。
进一步的技术方案,对机器鱼进行直游实验,获得机器鱼直游运动时CPG模型输出信号。
进一步的技术方案,对机器鱼进行转弯实验,获得机器鱼转弯运动时CPG模型输出的相位控制信号。
进一步的技术方案,在机器鱼转弯实验时,左右两侧的激励不同,取两激励的均值作为输入,并令所有尾鳍CPG振荡器以同一频率振荡。
进一步的技术方案,BP神经网络训练时,设置BP神经网络运行的必备参数,包括最大训练步数,训练目标最小误差,每间隔多少步显示一次训练结果以及学习速率;
通过神经网络使机器鱼自主建模,实验后采样并记录系统的输出与误差;
检验误差结果,如果误差小于设定误差值或在最大迭代次数时仍存在较大误差时,调整设置参数,再次进行试验,直到误差小于设定值或误差在最大迭代次数前符合条件为止。
进一步的技术方案,在BP神经网络正向传播过程中,输入信息从输入层经隐含层逐层处理,并传向输出层,每一层神经元的状态只影响下一层神经元的状态。
进一步的技术方案,在BP神经网络正向传播过程中,如果输出层没有得到期望输出,则转入反向传播过程,将误差信号按原来的连接通道返回,通过修改各层神经元的权值,是误差信号最小。
本说明书实施方式提供一种基于BP神经网络的机器鱼多模态运动系统,通过以下技术方案实现:
包括:
CPG模型建立模块:对四关节具有胸鳍的机器鱼进行动力学建模,令尾鳍CPG单向抑制胸鳍CPG,利用非线性振荡器模型作为CPG神经元,确定左右两边输入激励,下行和上行相位耦合系数,上行和下行耦合系数权重,对应各个关节的CPG频率;
BP神经网络模型建立模块:基于CPG模型得到关节角度的变化,将关节角度变化值存储为数据包进行BP神经网络训练,并将训练好的数据发送到仿生机器鱼的控制器上,利用CPG信号驱动各关节的摆动,进行机器鱼直游转弯运动。
与现有技术相比,本公开的有益效果是:
本公开误差反向传播算法(Error Back Propagation Training,简称BP)解决了多层神经网络隐含层连接权学习问题,并在数学上给出了完整推导。BP神经网络具有任意复杂的模式分类能力和优良的多维函数映射能力,将它运用到仿生机器鱼的运动模式上,通过学习机器鱼关节角度的变化控制机器鱼直游和转弯运动,对观察机器鱼运动模态起着重要作用。
本公开根据机器鱼模型,建立适合机器鱼运动的CPG模型;得到机器鱼运动时的关节角度数据,对数据进行处理,去除异常值;创建神经网络,对处理后数据进行训练,设置训练参数得到波形数据,将得到的数据与原有数据进行比对,得到误差,检验误差结果。提出了一种利用BP神经网络使机器鱼自主建模的方法,实现多模态运动,从而提高机器鱼水下感知环境的能力。
在机器鱼多模态运动的过程中,需要对机器鱼进行动力学建模。而传统的仿生机器鱼建模方法的推导过程都较为复杂,且计算量随着机器鱼自由度的增加而迅速增加,计算结果容易出错。受到人工智能的启发,可以尝试采用神经网络的方法来替代CPG模型解决该问题,让机器鱼自己学会对动力学的建模,从而更好地适应水下复杂的环境。
本公开利用BP神经网络学习机器鱼的多模态运动,通过CPG模型得到关节角度的变化,将其作为学习训练的数据,输出新的关节角度变化及误差,最终实现BP神经网络学习机器鱼多模态运动的过程,提高了机器鱼系统的自主性与适应性。
附图说明
构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。
图1为本公开实施例子的机器鱼的CPG控制结构图;
图2为本公开实施例子的机器鱼直游运动时CPG模型输出信号示意图;
图3为本公开实施例子的机器鱼直游运动时关节角度随时间的变化、胸鳍横向位移随时间的变化、胸鳍与尾鳍频率值随时间的变化示意图;
图4为本公开实施例子的机器鱼转弯运动时CPG模型输出信号示意图;
图5为本公开实施例子的机器鱼转弯运动时关节角度随时间的变化、胸鳍横向位移随时间的变化、胸鳍与尾鳍频率值随时间的变化示意图;
图6(a)为本公开实施例子的为神经网络直游运动训练的结果示意图;
图6(b)为本公开实施例子的为神经网络转弯运动训练的结果示意图;
图6(c)为本公开实施例子的神经网络直游运动训练误差值示意图;
图6(d)为本公开实施例子的神经网络转弯运动训练误差值示意图;
图7为本公开实施例子的BP神经网络结构图。
具体实施方式
应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本公开的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
实施例子一
该实施例公开了一种基于BP神经网络的机器鱼多模态运动方法,对原有CPG模型输出关节角度的数据进行训练,得到波形数据,将得到的数据与原有数据进行比对,检验误差结果,提出了一种机器鱼水下感知环境并自主运动的可能性。
具体在实施时,步骤1:建立机器鱼的动力学模型。
某些鱼类具有发达的胸鳍,但主要用于平衡身体和掌握运动方向。当高速前进时,胸鳍和整个尾部的波动保持一致,推进鱼体;当低速前进时,则靠胸鳍单独波动或尾部微小的波动协调推进。可见,在两者的连接关系中,尾鳍CPG应对胸鳍CPG起到抑制作用,因此,本公开令尾鳍CPG单向抑制胸鳍CPG。
通过程序设定对机器鱼进行实验测试,分别得到机器鱼在直游和转弯时4个关节角度的变化值。存储的得到的数据值,为BP神经网络训练做好基础准备工作。
本公开使用的机器鱼具有四个关节和一对胸鳍,可以进行往复摆动运动。机器鱼的CPG控制结构如图1所示。
利用CPG信号驱动各关节的摆动,本公开采用相位振荡器模型,表示如式(1):
Figure BDA0002112291930000071
式中θi和ri为振荡器状态变量,分别表示相位和幅值;fi和Ri决定振荡器的内在频率和幅值;τi为正常量,决定ri收敛到Ri的速度;振荡器间的相互耦合关系由权重wij和相位差
Figure BDA0002112291930000072
决定。
本公开实施例子中,机器鱼利用舵机控制,而舵机的动作通过振荡器的输出信号驱动。
对具有四个关节和一对胸鳍的机器鱼建立非线性振荡器模型,控制机器鱼直游和转弯运动。
利用上式非线性振荡器模型作为CPG神经元。CPG神经元的输入量为激励,并分为左激励dl和右激励dr,经饱和函数后得到振荡器参数fi和Ai,分别驱动左侧身体和右侧身体。定义模型的相位耦合关系下行为φd,上行为φu
本公开确定机器鱼直游和转弯运动时的各项参数,如上、下行相位耦合系数,尾鳍展长,对应各个关节的CPG频率左右激励值等。对机器鱼进行直游与转弯运动模拟实验,分别得到各个关节角度的变化值。
具体的实施例子中,通过程序设定对机器鱼进行实验测试,分别得到机器鱼在直游和转弯时4个关节角度的变化值。存储的得到的数据值,对数据进行归一化处理,去除异常数据,为BP神经网络训练做好基础准备工作。
具体的实施例子中,CPG模型也就是相位振荡器模型输出信号作用舵机上,通过舵机摆动得到关节角度的变化值。
对具有四个关节和一对胸鳍的机器鱼建立非线性振荡器模型,控制机器鱼直游和转弯运动。
在此基础上,进行了向前直行、转弯等模式的实验。
步骤1.1:直游
图2所示为机器鱼直游运动时CPG模型输出信号,其中实验时左右两边输入激励分别为dl=2.5和dr=2.5,下行相位耦合系数φd=π/4,上行φu=-π/4,上行和下行耦合系数权重均为10。图3为机器鱼直游时关节角度随时间的变化。其中仿生机器鱼关节1-3、尾鳍(即J1~J4,由头至尾的方向,靠近头部的第一个关节为J1,以此类推,J4为尾鳍)。由图3可以看出,由头部指向尾部方向上,各关节摆动幅度逐渐增加,相位上滞后一个稳定的角度。
仿真时参数为:尾鳍展长为0.170m;对应各个关节J1~J4的CPG频率为2.1Hz。左右两侧对应的CPG间(如图1中的CPG O1和CPG O5之间)相互耦合系数均为(10,π)(前面数字10是耦合权重,后面π是相位差)。
步骤1.2:转弯
图4所示为机器鱼转弯运动时CPG模型输出的相位控制信号,其中φd=π/4、φu=-π/4,上行和下行耦合系数权重均为10。图5为机器鱼转弯运动时关节角度随时间的变化。
仿真时参数为:尾鳍展长为0.170m;对应各个关节J1~J3的CPG频率为2.1Hz。左右两侧对应的CPG间(如图1中的CPG O1和CPG O5之间)相互耦合系数均为(10,π)(前面数字10是耦合权重,后面π是相位差)。
在机器鱼转弯时,左右两侧的激励不同,如果左右两侧尾鳍CPG按照不同频率振荡,两者将输出具有不同周期的振荡波形,相减后得一个和量CPG振荡周期都不相同的全新波形。从生物学的角度看,左右两侧CPG“兴奋—抑制”的关系将被打乱,破坏了CPG振荡器间的耦合关系,因此,取两激励的均值作为输入,并令所有尾鳍CPG振荡器以同一频率振荡,其函数形式为式(2):
Figure BDA0002112291930000091
其中,dlow为激励的最小门限值;kf,tail和bf,tail为尾部频率系数;fsat为饱和频率。此时输入激励值随时间线性增加。
步骤2:BP神经网络建模
将关节角度变化值存储为数据包进行BP神经网络训练,并将训练好的数据通过程序设定发送到仿生机器鱼的STM32板上,从而观察机器鱼的直游或转弯运动。
本公开采用含有两个隐含层的神经网络。BP学习算法的基本原理是梯度最速下降法,它的中心思想是调整权值使网络总误差最小。网络学习过程是一种误差边向后传播边修正权系数的过程。将上一节点的输出传递到下一层时,通过调整连接权系数来达到增强或削弱这些输出的作用。BP神经网络算法包含正向传播和反向传播两个阶段。
参见附图7所示,为BP神经网络结构图。
设置BP神经网络的各个参数,进行神经网络训练。首先进行正向传播过程,输入信息从输入层经隐含层逐层处理,并传向输出层,每一层神经元的状态只影响下一层神经元的状态。在BP神经网络正向传播过程中,如果输出层没有得到期望输出,则转入反向传播过程,将误差信号按原来的连接通道返回,通过修改各层神经元的权值,使误差信号最小。
步骤2.1:正向传播过程
在BP神经网络正向传播过程中,输入信息从输入层经隐含层逐层处理,并传向输出层,每一层神经元的状态只影响下一层神经元的状态。
在BP神经网络正向传播过程中,如果输出层没有得到期望输出,则转入反向传播过程,将误差信号按原来的连接通道返回,通过修改各层神经元的权值,使误差信号最小。
学习训练阶段,假设有N个样本。如果已知输入样本{xp}及预期输出{TP},隐含层第i个节点在样本p作用下的输出可表示为式(3):
Figure BDA0002112291930000101
其中
Figure BDA0002112291930000105
为第p个样本中第j个输入,θi为隐层第i个节点的阈值,wij为输入层第j个节点与隐层第i个节点之间的连接权值,M为输入层的节点数。
隐层第i个节点的输出为式(4):
Figure BDA0002112291930000102
g(.)为激活函数,sigmod激活函数形式为g(x)=1/(1+exp[-(x+θ1)/θ0]),其中θ1表示偏值,θ0为调节形状参数。
隐含层第i个节点输出
Figure BDA0002112291930000103
通过权系数向前传播到输出层第k个节点,并作为它的输出之一,输出层的第k个节点的输入为式(5):
Figure BDA0002112291930000104
θk为输出层第k个节点的阈值,wki为输出层第k个节点与隐层第i个节点之间的连接权值,L为输出层的节点数,q为隐层的节点数。
输出层第k个节点的输出为式(6):
Figure BDA0002112291930000111
对每一个样本p的输入模式,其误差为式(7):
Figure BDA0002112291930000112
Figure BDA0002112291930000114
为第个p样本第k个输出层节点输出期望值。
对N个训练样本的总误差为式(8):
Figure BDA0002112291930000113
N为模式样本数,L为网络输出节点数。
若其输出与给定的期望值不一致,则将误差信号从输出端反向传播回来,并在传播过程中对权值进行修正,直到输出层输出值为期望输出,完成样本训练过程。
步骤2.2:反向传播过程
对输出层权系数进行调整:
再次参见附图7所示,将训练集数据输入到ANN的输入层,经过隐藏层,最后达到输出层并输出结果,这是ANN的前向传播过程;
由于ANN的输出结果与实际结果有误差,则计算估计值与实际值之间的误差,并将该误差从输出层向隐藏层反向传播,直至传播到输入层;
反向传播的过程中,根据误差调整各种参数的值;不断迭代上述过程,直至收敛。
这个过程通过不断更新权重,可以减小实际输出与期望输出之间的误差值。
首先定义输出层权系数,如式(9):
Figure BDA0002112291930000121
隐层第i个节点与输出层第k个节点权值总调整量为式(10):
Figure BDA0002112291930000122
调整后的隐层第i个节点与输出层第k个节点的权值为式(11):
wki(k+1)=wki(k)+Δwki(11)
对隐层权系数进行调整:
首先定义隐层权系数,如式(12):
Figure BDA0002112291930000123
隐层第i个节点与输出层第j个节点权值总调整量为式(13):
Figure BDA0002112291930000124
调整后的隐层第i个节点与输出层第j个节点的权值为式(14):
wij(k+1)=wij(k)+Δwij(14)
采用修正后的权系数,带入输入样本继续训练,将计算结果与CPG模型输出结果比对,如果达不到要求,继续返回修改权系数,往复循环,直至输出与期望值接近的结果。
实现神经网络控制机器鱼多模态运动方法的流程如下:
(1)建立CPG模型,控制机器鱼直游和转弯运动;
(2)得到机器鱼直游和转弯运动时关节角度的变化值,分别对两组数据进行处理,为BP神经网络训练做准备;
(3)设置BP神经网络运行的必备参数,包括最大训练步数,训练目标最小误差,每间隔多少步显示一次训练结果以及学习速率;
(4)通过神经网络使机器鱼自主建模,实验后采样并记录系统的输出与误差;
(5)检验误差结果,如果误差小于设定误差值或在最大迭代次数时仍存在较大误差时,调整设置参数,再次进行试验,直到误差小于设定值或误差在最大迭代次数前符合条件为止。
对本公开提出的基于BP神经网络的机器鱼多模态运动系统进行仿真。首先创建CPG模型,直游运动时,左右两边输入激励分别为dl=2.5和dr=2.5,下行相位耦合系数φd=π/4,上行φu=-π/4,上行和下行耦合系数权重均为10。仿真时参数为:尾鳍展长为0.170m;对应各个关节J1~J4的CPG频率为2.1Hz。左右两侧对应的CPG间相互耦合系数均为(10,π)(前面数字10是耦合权重,后面π是相位差)。转弯运动时CPG模型输出的相位控制信号,其中φd=π/4、φu=-π/4,上行和下行耦合系数权重均为10。仿真时参数为:尾鳍展长为0.170m;对应各个关节J1~J3的CPG频率为2.1Hz。左右两侧对应的CPG间相互耦合系数均为(10,π)(前面数字10是耦合权重,后面π是相位差)。根据公式(2)确定尾部频率值。
设置BP神经网络参数,使误差落在设定范围以内。其次创建神经网络,输入层神经元个数为1,2个隐含层,第一层有20个神经元,第二层有19个神经元,19个输出神经元,隐层采用Sigmoid传输函数;最后设置训练参数,包括最大训练步数为4000步,训练目标最小误差0.001,每间隔多少500步显示一次训练结果以及学习速率0.005;图6(a)-图6(d)为神经网络训练的结果及误差值,发现误差在及进行大约250次迭代后逐步趋于稳定,训练效果良好。
综上,BP神经网络具有任意复杂的模式分类能力和优良的多维函数映射能力,将它运用到仿生机器鱼的运动模式上,通过学习机器鱼关节角度的变化控制机器鱼直游和转弯,对机器鱼多模态运动起着重要作用。传统的仿生机器鱼建模方法的推导过程都较为复杂,且计算量随着机器鱼自由度的增加而迅速增加,计算结果容易出错。受到人工智能的启发,本公开尝试采用神经网络的方法来解决该问题,让机器鱼自己学会对动力学的建模,从而更好地适应水下复杂的环境。
实施例子二
本说明书实施方式提供一种基于BP神经网络的机器鱼多模态运动系统,通过以下技术方案实现:
包括:
CPG模型建立模块:对四关节具有胸鳍的机器鱼进行动力学建模,令尾鳍CPG单向抑制胸鳍CPG,利用非线性振荡器模型作为CPG神经元,确定左右两边输入激励,下行和上行相位耦合系数,上行和下行耦合系数权重,对应各个关节的CPG频率;
BP神经网络模型建立模块:基于CPG模型得到关节角度的变化,将关节角度变化值存储为数据包进行BP神经网络训练,并将训练好的数据发送到仿生机器鱼的控制器上,利用CPG信号驱动各关节的摆动,进行机器鱼直游转弯运动。
在该实施例中,模块的具体实现过程参见实施例子一中的具体过程,此处不再进行详细的描述。
可以理解的是,在本说明书的描述中,参考术语“一实施例”、“另一实施例”、“其他实施例”、或“第一实施例~第N实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本公开的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述仅为本公开的优选实施例而已,并不用于限制本公开,对于本领域的技术人员来说,本公开可以有各种更改和变化。凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (7)

1.一种基于BP神经网络的机器鱼多模态运动方法,其特征是,包括:
建立CPG模型:对四关节具有胸鳍的机器鱼进行动力学建模,令尾鳍CPG单向抑制胸鳍CPG,利用非线性振荡器模型作为CPG神经元,确定左右两边输入激励,下行和上行相位耦合系数,上行和下行耦合系数权重,对应各个关节的CPG频率;
建立BP神经网络模型:基于CPG模型得到关节角度的变化,将关节角度变化值存储为数据包进行BP神经网络训练,并将训练好的数据发送到仿生机器鱼的控制器上,利用CPG信号驱动各关节的摆动,进行机器鱼直游转弯运动;
BP神经网络训练时,设置BP神经网络运行的必备参数,包括最大训练步数,训练目标最小误差,每间隔多少步显示一次训练结果以及学习速率;
通过神经网络使机器鱼自主建模,实验后采样并记录系统的输出与误差;
检验误差结果,如果误差小于设定误差值或在最大迭代次数时仍存在较大误差时,调整设置参数,再次进行试验,直到误差小于设定值或误差在最大迭代次数前符合条件为止;
在BP神经网络正向传播过程中,输入信息从输入层经隐含层逐层处理,并传向输出层,每一层神经元的状态只影响下一层神经元的状态;
在BP神经网络正向传播过程中,如果输出层没有得到期望输出,则转入反向传播过程,将误差信号按原来的连接通道返回,通过修改各层神经元的权值,是误差信号最小。
2.如权利要求1所述的一种基于BP神经网络的机器鱼多模态运动方法,其特征是,将CPG模型得到关节角度的数据进行训练,得到波形数据,将得到的数据与原有数据进行比对,检验误差结果。
3.如权利要求1所述的一种基于BP神经网络的机器鱼多模态运动方法,其特征是,利用非线性振荡器模型作为CPG神经元,CPG神经元的输入量为激励,并分为左激励dl和右激励dr,经饱和函数后得到振荡器参数fi和Ai,分别驱动机器鱼左侧身体和右侧身体。
4.如权利要求1所述的一种基于BP神经网络的机器鱼多模态运动方法,其特征是,对机器鱼进行直游实验,获得机器鱼直游运动时CPG模型输出信号。
5.如权利要求1所述的一种基于BP神经网络的机器鱼多模态运动方法,其特征是,对机器鱼进行转弯实验,获得机器鱼转弯运动时CPG模型输出的相位控制信号。
6.如权利要求5所述的一种基于BP神经网络的机器鱼多模态运动方法,其特征是,在机器鱼转弯实验时,左右两侧的激励不同,取两激励的均值作为输入,并令所有尾鳍CPG振荡器以同一频率振荡。
7.一种基于BP神经网络的机器鱼多模态运动系统,其特征是,包括:
CPG模型建立模块:对四关节具有胸鳍的机器鱼进行动力学建模,令尾鳍CPG单向抑制胸鳍CPG,利用非线性振荡器模型作为CPG神经元,确定左右两边输入激励,下行和上行相位耦合系数,上行和下行耦合系数权重,对应各个关节的CPG频率;
BP神经网络模型建立模块:基于CPG模型得到关节角度的变化,将关节角度变化值存储为数据包进行BP神经网络训练,并将训练好的数据发送到仿生机器鱼的控制器上,利用CPG信号驱动各关节的摆动,进行机器鱼直游转弯运动。
CN201910576714.XA 2019-06-28 2019-06-28 一种基于bp神经网络的机器鱼多模态运动方法及系统 Active CN110286592B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910576714.XA CN110286592B (zh) 2019-06-28 2019-06-28 一种基于bp神经网络的机器鱼多模态运动方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910576714.XA CN110286592B (zh) 2019-06-28 2019-06-28 一种基于bp神经网络的机器鱼多模态运动方法及系统

Publications (2)

Publication Number Publication Date
CN110286592A CN110286592A (zh) 2019-09-27
CN110286592B true CN110286592B (zh) 2022-11-01

Family

ID=68019552

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910576714.XA Active CN110286592B (zh) 2019-06-28 2019-06-28 一种基于bp神经网络的机器鱼多模态运动方法及系统

Country Status (1)

Country Link
CN (1) CN110286592B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110909859B (zh) * 2019-11-29 2023-03-24 中国科学院自动化研究所 基于对抗结构化控制的仿生机器鱼运动控制方法、系统
US10962976B1 (en) 2019-11-29 2021-03-30 Institute Of Automation, Chinese Academy Of Sciences Motion control method and system for biomimetic robotic fish based on adversarial structured control
CN110937092A (zh) * 2019-12-12 2020-03-31 华南理工大学 一种多模态仿生拉线机器鱼的cpg控制方法及机器鱼
CN110989399A (zh) * 2019-12-16 2020-04-10 山东建筑大学 一种融合Spiking神经网络和CPG的机器鱼仿生控制方法及系统
CN111284663B (zh) * 2019-12-27 2021-01-08 南京工程学院 一种鱼形仿生水下机器人及其控制方法
CN111176116B (zh) * 2020-01-02 2021-05-28 西安交通大学 一种基于cpg模型的机器鱼闭环反馈控制方法
CN112904873B (zh) * 2021-01-26 2022-08-26 西湖大学 基于深度强化学习的仿生机器鱼控制方法及装置
CN113255243B (zh) * 2021-05-11 2022-07-01 苏州科技大学 基于人工侧线的仿生机器鱼近壁面流场识别方法及系统
CN113342012B (zh) * 2021-06-08 2022-07-26 西北工业大学 一种滑扑一体航行器的航向控制方法
CN114740875A (zh) * 2022-03-31 2022-07-12 山东大学 基于神经振荡器的机器人节律运动控制方法及系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7769487B2 (en) * 2003-07-24 2010-08-03 Northeastern University Process and architecture of robotic system to mimic animal behavior in the natural environment
CN101776863B (zh) * 2009-11-17 2011-07-27 中国科学院自动化研究所 一种胸鳍推进型机器鱼的运动控制方法
CN101916071B (zh) * 2010-08-04 2012-05-02 中国科学院自动化研究所 仿生机器鱼运动的cpg反馈控制方法
KR20120138295A (ko) * 2011-06-14 2012-12-26 한국과학기술원 로봇물고기의 유영을 위한 제어 방법

Also Published As

Publication number Publication date
CN110286592A (zh) 2019-09-27

Similar Documents

Publication Publication Date Title
CN110286592B (zh) 一种基于bp神经网络的机器鱼多模态运动方法及系统
EP3204834B1 (en) Guidance of underwater snake robots
CN112904728B (zh) 一种基于改进型趋近律的机械臂滑模控制轨迹跟踪方法
Tedrake Underactuated robotics: Learning, planning, and control for efficient and agile machines course notes for MIT 6.832
CN107160398B (zh) 基于确定学习的全状态受限刚性机械臂安全可靠控制方法
CN112462792B (zh) 一种基于Actor-Critic算法的水下机器人运动控制方法
CN111240344B (zh) 基于强化学习技术的自主水下机器人无模型控制方法
Wu et al. CPG parameter search for a biomimetic robotic fish based on particle swarm optimization
Barhaghtalab et al. Dynamic analysis, simulation, and control of a 6-DOF IRB-120 robot manipulator using sliding mode control and boundary layer method
CN114779645B (zh) 一种有向固定通信拓扑下胸鳍拍动式机器鱼编队控制方法
Kelasidi et al. A waypoint guidance strategy for underwater snake robots
CN105182754B (zh) 仿生机器人运动控制神经网络的构建方法
Yan et al. Robust nonlinear model predictive control of a bionic underwater robot with external disturbances
Ma et al. Efficient HZD gait generation for three-dimensional underactuated humanoid running
CN114952835A (zh) 一种基于扰动观测器的柔性关节机械臂神经网络积分滑模控制器设计方法
CN110989399A (zh) 一种融合Spiking神经网络和CPG的机器鱼仿生控制方法及系统
Taheri et al. Design boundary layer thickness and switching gain in SMC algorithm for AUV motion control
Pan et al. Learning for depth control of a robotic penguin: A data-driven model predictive control approach
Dong et al. Gliding motion optimization for a biomimetic gliding robotic fish
Qiu et al. Multi-agent reinforcement learning based stable path tracking control for a bionic robotic fish with reaction wheel
Kawaharazuka et al. Dynamic task control method of a flexible manipulator using a deep recurrent neural network
CN113110512B (zh) 一种减弱未知干扰与抖振影响的可底栖式auv自适应轨迹跟踪控制方法
CN110703792B (zh) 基于增强学习的水下机器人姿态控制方法
Farooq et al. A low cost microcontroller implementation of neural network based hurdle avoidance controller for a car-like robot
CN105467841B (zh) 一种类人机器人上肢运动的类神经控制方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant