CN110262218A - 机器鱼的控制方法、装置、设备及存储介质 - Google Patents
机器鱼的控制方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN110262218A CN110262218A CN201910420732.9A CN201910420732A CN110262218A CN 110262218 A CN110262218 A CN 110262218A CN 201910420732 A CN201910420732 A CN 201910420732A CN 110262218 A CN110262218 A CN 110262218A
- Authority
- CN
- China
- Prior art keywords
- joint
- machine fish
- current
- angle
- difference
- 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.)
- Pending
Links
- 241000251468 Actinopterygii Species 0.000 title claims abstract description 161
- 238000000034 method Methods 0.000 title claims abstract description 40
- 206010023230 Joint stiffness Diseases 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 13
- 230000001186 cumulative effect Effects 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 9
- 238000009825 accumulation Methods 0.000 claims description 7
- 230000010354 integration Effects 0.000 claims description 6
- 230000001141 propulsive effect Effects 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 238000011160 research Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 210000003205 muscle Anatomy 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000005611 electricity Effects 0.000 description 3
- 238000012549 training Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000012530 fluid Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 239000011664 nicotinic acid Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000035479 physiological effects, processes and functions Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000003014 reinforcing effect Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000009182 swimming Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B11/00—Automatic controllers
- G05B11/01—Automatic controllers electric
- G05B11/36—Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
- G05B11/42—Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential for obtaining a characteristic which is both proportional and time-dependent, e.g. P. I., P. I. D.
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Feedback Control In General (AREA)
Abstract
本申请公开了一种机器鱼的控制方法、装置、设备及存储介质,获取机器鱼关节当前的第一角度与预设的第二角度的差值,根据关节电机当前输出的负功功率和所述机器鱼关节当前的第一角度,从预先建立的Q表中获取所述机器鱼关节当前的最优关节刚度,将所述最优关节刚度作为PID控制器的比例系数,并对所述差值进行PID控制,获得当前最优力矩,控制所述关节电机对所述机器鱼关节进行驱动,以使所述机器鱼关节的力矩为所述当前最优力矩,并再次执行获取差值的步骤,其中,所述Q表采用强化学习算法建立的。通过本方案,能够提高机器鱼的推进效率。
Description
技术领域
本申请涉及机器鱼领域,特别涉及一种机器鱼的控制方法、装置、设备及存储介质。
背景技术
在自然界中,鱼类通过身体和/或尾鳍的摆动,获得快速高效的游动性能和极高的机动性,这些独特的游动性能吸引了越来越多的科研工作者。近年来,研究人员逐渐从流体力学等方面揭示鱼类高效游动的机理,但是,基于生物原型的仿生机器鱼不论在游动速度、推进效率还是在转弯机动性上均远远落后于自然界中的鱼类。
目前,由于机器鱼有限的载荷量中能源和动力机构占了很大的比重,这使得机器鱼的发展受到了很大的限制。相关科学家只能研究如何改变机器鱼运动过程中不同参数,以此来提高机器鱼的运行效率。
随着时间的不断推移,计算机控制、材料加工以及传感器测试设备等科学技术在不断发展,仿生机器鱼游动的特性和原理的研究也在不断深入,并且越来越多的人将仿生机器鱼应用在了各种勘测、运输、军事监视、水下作业等领域。然而,有限的电源储量和有效载荷能力限制了机器鱼的长时间作业能力和相关技术的发展,如何有效提高机器鱼的推进效率使它能适应更多复杂环境并且高效工作,是本领域亟需解决的技术问题。
发明内容
本申请的目的在于提供一种机器鱼的控制方法及装置,以提高机器鱼的推进效率。
第一方面,本申请实施例提供了一种机器鱼的控制方法,包括:
获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error;
根据关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ,从预先建立的Q表中获取所述机器鱼关节当前的最优关节刚度;
将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数,并对所述差值error进行PID控制,获得当前最优力矩;
控制所述关节电机对所述机器鱼关节进行驱动,以使所述机器鱼关节的力矩为所述当前最优力矩,并再次执行所述获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error的步骤;
其中,所述Q表是以关节电机输出的负功功率P和机器鱼关节的第一角度θ构成的状态s为输入,以机器鱼关节的关节刚度为输出,采用强化学习算法建立的;所述Q表记录了每个状态s对应的每个动作获得的累积折扣奖励值,所述动作为关节刚度。
在一种可能的实现方式中,在本申请实施例提供的上述方法中,所述根据关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ,从预先建立的Q表中获取所述机器鱼关节当前的最优关节刚度,包括:
所述关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ构成当前状态s;
从预先建立的Q表中获得所述当前状态s下的最大累积折扣奖励值,所述最大累积折扣奖励值对应的关节刚度为所述机器鱼关节当前的最优关节刚度。
在一种可能的实现方式中,在本申请实施例提供的上述方法中,所述将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数,对所述差值error进行PID控制,获得当前最优力矩,包括:
将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数;
根据所述比例系数,对所述差值error进行比例控制,获得第一输出信号;
对所述差值error进行积分控制,获得第二输出信号;
对所述差值error进行微分控制,获得第三输出信号;
对所述第一输出信号、所述第二输出信号和所述第三输出信号进行叠加处理,获得所述当前最优力矩。
在一种可能的实现方式中,在本申请实施例提供的上述方法中,所述Q表的建立方法为:
(1)初始化Q表,学习速率α,折扣因子γ;
(2)选择起始状态st;
(3)依据预设概率∈-greedy,选择当前st下的一个动作at;
(4)执行动作at,获得奖励值rt+1,转移到下一个状态st+1;
(5)重复步骤(3),选取动作at+1;
(6)根据如下公式更新Q表:
Q(st,at)←Q(st,at)+αt[r(st,at)+γmaxQ(st+1,at+1)-Q(st,at)];
(7)再从步骤(3)开始循环执行,直到Q表收敛。
第二方面,本申请实施例提供了一种机器鱼的控制装置,包括:
获取模块,用于获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error;
强化学习模块,用于根据关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ,从预先建立的Q表中获取所述机器鱼关节当前的最优关节刚度;
PID控制模块,用于将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数,并对所述差值error进行PID控制,获得当前最优力矩;
驱动模块,用于控制所述关节电机对所述机器鱼关节进行驱动,以使所述机器鱼关节的力矩为所述当前最优力矩,并再次执行所述获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error的步骤;
其中,所述Q表是以关节电机输出的负功功率P和机器鱼关节的第一角度θ构成的状态s为输入,以机器鱼关节的关节刚度为输出,采用强化学习算法建立的;所述Q表记录了每个状态s对应的每个动作获得的累积折扣奖励值,所述动作为关节刚度。
在一种可能的实现方式中,在本申请实施例提供的上述装置中,所述关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ构成当前状态s;
所述强化学习模块,具体用于从预先建立的Q表中获得所述当前状态s下的最大累积折扣奖励值,所述最大累积折扣奖励值对应的关节刚度为所述机器鱼关节当前的最优关节刚度。
在一种可能的实现方式中,在本申请实施例提供的上述装置中,所述PID控制模块,包括:
比例控制单元,用于将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数;根据所述比例系数,对所述差值error进行比例控制,获得第一输出信号;
积分控制单元,用于对所述差值error进行积分控制,获得第二输出信号;
微分控制单元,用于对所述差值error进行微分控制,获得第三输出信号;
叠加单元,用于对所述第一输出信号、所述第二输出信号和所述第三输出信号进行叠加处理,获得所述当前最优力矩。
在一种可能的实现方式中,在本申请实施例提供的上述装置中,所述Q表的建立方法为:
(1)初始化Q表,学习速率α,折扣因子γ;
(2)选择起始状态st;
(3)依据预设概率∈-greedy,选择当前st下的一个动作at;
(4)执行动作at,获得奖励值rt+1,转移到下一个状态st+1;
(5)重复步骤(3),选取动作at+1;
(6)根据如下公式更新Q表:
Q(st,at)←Q(st,at)+αt[r(st,at)+γmaxQ(st+1,at+1)-Q(st,at)];
(7)再从步骤(3)开始循环执行,直到Q表收敛。
第三方面,本申请实施例提供了一种电子设备,包括:存储器和处理器;
所述存储器,用于存储计算机程序;
其中,所述处理器执行所述存储器中的计算机程序,以实现上述第一方面以及第一方面的各个实施方式中所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现上述第一方面以及第一方面的各个实施方式中所述的方法。
与现有技术相比,本申请提供的机器鱼的控制方法、装置、设备及存储介质,通过强化学习算法建立了关节负功、鱼体姿态和关节刚度之间的关系,以机器鱼的推进效率作为学习的奖惩值,训练学习机器鱼的最优负功刚度变化规律,从而实现对机器鱼进行最优变负功刚度控制,使机器鱼适应不同的环境,提高机器鱼的推进效率。
附图说明
图1为本申请实施例一提供的机器鱼的控制方法的流程示意图;
图2A为本申请实施例提供的两关节机器鱼的模型示意图;
图2B为本申请实施例提供的机器鱼控制模型架构示意图;
图3为本申请实施例提供的刚度控制过程的示意图;
图4为本申请实施例提供的强化学习算法的学习过程;
图5为本申请实施例二提供的机器鱼的控制装置的结构示意图;
图6为本申请实施例三提供的电子设备的结构示意图。
具体实施方式
下面结合附图,对本申请的具体实施方式进行详细描述,但应当理解本申请的保护范围并不受具体实施方式的限制。
除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。
目前,针对机器鱼的研究大部分还停留在观察真实鱼类的游动情况来进行形态和动作上的模仿设计,通过对活鱼进行研究能够获得的信息量有限,很少有对鱼类的生理学构造,具体游动原理等进行研究探索,模仿设计得到的机器鱼并没有达到预期和真实鱼类游动一样的效果,仍然存在着推进效率低下,运行不稳定,控制精度不高等缺点和不足。
通过对鱼类肌肉动作的研究,生物学家发现,在一个摆动周期内,生物鱼的肌肉既做正功也做负功。当肌肉收缩时做正功,通过输出力矩来驱动鱼类实现摆动;当肌肉舒张时做负功,此时生物鱼会改变自身姿态、身体刚度等因素来使得身体姿态、尾鳍摆动和外围流场环境相协调,可以取得比只做正功更高的推进效率。已经有研究表明鱼体刚度会很大程度上影响鱼类的推进效率,随身体姿态和环境状态变化的刚度相比起恒定不变的刚度能更好地提高机器鱼的推进效率。
图1为本申请实施例一提供的机器鱼的控制方法的流程示意图,如图1所示,该控制方法包括:
S101、获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error;
S102、根据关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ,从预先建立的Q表中获取所述机器鱼关节当前的最优关节刚度;
S103、将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数,并对所述差值error进行PID控制,获得当前最优力矩;
S104、控制所述关节电机对所述机器鱼关节进行驱动,以使所述机器鱼关节的力矩为所述当前最优力矩,并再次执行所述获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error的步骤;
其中,所述Q表是以关节电机输出的负功功率P和机器鱼关节的第一角度θ构成的状态s为输入,以机器鱼关节的关节刚度为输出,采用强化学习算法建立的;所述Q表记录了每个状态s对应的每个动作获得的累积折扣奖励值,所述动作为关节刚度。
其中,所述第一角度可以通过设置在机器鱼关节的传感器采集获得。具体的,所述关节电机可以为直流电机;θ为机器鱼关节实际到达的角度;error表示机器鱼关节当前的第一角度θ与预设的第二角度θgiven之间的误差,例如,error=θgiven-θ。预设的第二角度θgiven的值可以根据实际需要进行设定,本申请对此不进行限定。
实际应用中,可以建立两关节机器鱼的模型(如图2A所示),即身体-尾鳍波动推进模型,该机器鱼模型由三部分组成:头部(Head),身体(Body),尾部(Tail)。假定机器鱼头部朝一个方向即运动方向不变,后面两个关节不断摆动,通过与前一个关节产生角度差来与流体相互作用,从而推动机器鱼向前游动。
L1,L2,Lh分别为身体、尾部和头部的长度;O1和O2分别是身体和尾部的重心;我们利用合力F0,F1,F2分别代表环境对机器鱼所施加的水动力大小。D1,D2分别是对身体合力F1和对尾部合力F2的作用点。
假设机器鱼头部只在×轴方向上有速度,在Y轴方向没有速度,因此我们的机器鱼有三个自由度,即头部的横坐标,第一个关节相对于头部的角度,第二个关节相对于第一个关节的角度。
图2B为本申请实施例提供的机器鱼控制模型架构示意图。实际应用中,如图2B所示,在进行机器鱼控制时,首先计算机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error。对机器鱼关节处的力矩M由计算得到的角度差值error和关节处的刚度决定,因为机器鱼的推进是由摆动产生的,因此,关节处产生的力矩M将会推动机器鱼前进。
PID控制器的输入为角度差值error,输出为控制电机的转矩M。当控制电机的转矩M较大时,转动关节单位角度所需要的外部力矩较大,此时关节的刚度较大;相反,当控制电机的转矩M较小时,转动关节单位角度所需要的外部力矩较小,此时关节的刚度较小。通过上述分析我们可以知道关节的刚度与关节电机的转矩M成正比关系。当角度差值error固定时,电机的控制转矩M与PID控制器的比例系数成线性正比关系,因此,关节刚度与PID控制器比例系数成正比关系,所以我们可以把比例系数的改变近似理解为刚度的变化。
因此,本实施中根据关节电机当前输出的负功功率P和机器鱼关节当前的第一角度θ,从预先建立的Q表中获取所述机器鱼关节当前的最优关节刚度Kθ。在利用强化学习的过程中,是将(P,θ)视为输入的状态s,通过强化学习(Reinforcement Learning,简称RL)建立的Q表来输出关节处刚度的大小,从而进行机器鱼的控制。将最优关节刚度作为PID控制器的比例系数,并对所述差值error进行PID控制,从而获得相应关节当前最优力矩,从而根据当前最优力矩控制相应关节电机对机器鱼关节进行驱动,之后重复执行上述步骤,从而实现对机器鱼进行最优变负功刚度控制,使机器鱼适应不同的环境,提高机器鱼的推进效率。
一种实施方式中,上述步骤S102具体实现为:所述关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ构成当前状态s;从预先建立的Q表中获得所述当前状态s下的最大累积折扣奖励值,所述最大累积折扣奖励值对应的关节刚度为所述机器鱼关节当前的最优关节刚度。
图3为本申请实施例提供的刚度控制过程的示意图,如图3所示,为了调整关节处的刚度来提高机器鱼的推进效率,可以建立负功(NegativePower)、机器鱼的游动角度(SwimmingAngle)和关节刚度(Stiffness of each Joints)之间的关系,即建立能表达对应关系的Q表(Q-talbe)。具体的,当控制周期dt足够小的情况下,机器鱼所做的负功可以近似看做每一个dt内负功功率的和,为了方便计算,后面采用负功功率代替负功来作为强化学习的输入之一。由于机器鱼的游动姿态也是一个影响刚度变化的重要因素,因此游动角度作为另一个输入。关节的刚度变化量作为输出变量。
基于强化学习算法,建立一个Q表,它的列是不同的状态,行是不同的动作(见下表1)。当输入一个状态,要求选择一个动作时,我们以预设概率∈-greedy来决定是否利用Q表进行选择,如果不利用Q表进行选择,那么将随机选择一个动作,这样的设计能够保证强化学习以一定的概率去尝试新的动作,再评测这样的动作是否符合要求。当利用Q表进行选择时,可以找到对应状态那一行,选择表中最大的数据所对应的索引动作,作为动作的输出。这样,便完成了动作的选择。
表1:
具体的,Q表的建立方法如下:
(1)初始化Q表,学习速率α,折扣因子γ;
(2)选择起始状态st;
(3)依据预设概率∈-greedy,选择当前st下的一个动作at;
(4)执行动作at,获得奖励值rt+1,转移到下一个状态st+1;
(5)重复步骤(3),选取动作at+1;
(6)根据如下公式更新Q表:
Q(st,at)←Q(st,at)+αt[r(st,at)+γmaxQ(st+1,at+1)-Q(st,at)];
(7)再从步骤(3)开始循环执行,直到Q表收敛。
本实施方式的具体算法流程如图4所示,其中,机器鱼推进过程中产生水动力,机器鱼所做的有用功即为能量转化为水动力来推动鱼向前游动的能量,则一个周期内有用功表示为Wuseful;现在的模型为两关节机器鱼,则在实际控制中,所消耗的能量都用在了驱动两个关节产生转矩上,则一个摆动周期内总的能量的消耗表示为Wtotal;则效率计算公式为:Kb表示关节在刚度不变的情况下获得最高效率时的刚度,Ka表示强化学习输出刚度的变化范围,关节的真实刚度可以表示为Kθ=Kb+Ka。
本实施方式中,由于强化学习利用机器鱼自身的反馈进行学习,在长期的训练学习的结果下,会拟合出比较好的关系曲线,借助这一刚度变化关系,可以有效提高机器鱼推进效率。
一种实施方式中,上述步骤S103具体实现为:将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数;根据所述比例系数,对所述差值error进行比例控制,获得第一输出信号;对所述差值error进行积分控制,获得第二输出信号;对所述差值error进行微分控制,获得第三输出信号;对所述第一输出信号、所述第二输出信号和所述第三输出信号进行叠加处理,获得所述当前最优力矩。
本实施方式中,可以通过PID控制器获得最优关节刚度对应的当前最优力矩,以有效提高机器鱼推进效率。
下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图5为本申请实施例二提供的机器鱼的控制装置的结构示意图,如图5所示,该控制装置包括:
获取模块510,用于获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error;
强化学习模块520,用于根据关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ,从预先建立的Q表中获取所述机器鱼关节当前的最优关节刚度;
PID控制模块530,用于将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数,并对所述差值error进行PID控制,获得当前最优力矩;
驱动模块540,用于控制所述关节电机对所述机器鱼关节进行驱动,以使所述机器鱼关节的力矩为所述当前最优力矩,并再次执行所述获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error的步骤;
其中,所述Q表是以关节电机输出的负功功率P和机器鱼关节的第一角度θ构成的状态s为输入,以机器鱼关节的关节刚度为输出,采用强化学习算法建立的;所述Q表记录了每个状态s对应的每个动作获得的累积折扣奖励值,所述动作为关节刚度。
本实施例提供的机器鱼的控制装置,通过强化学习算法建立了关节负功、鱼体姿态和关节刚度之间的关系,以机器鱼的推进效率作为学习的奖惩值,训练学习机器鱼的最优负功刚度变化规律,从而实现对机器鱼进行最优变负功刚度控制,使机器鱼适应不同的环境,提高机器鱼的推进效率。
一种实施方式中,在实施例二的基础上,所述关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ构成当前状态s;
所述强化学习模块520,具体用于从预先建立的Q表中获得所述当前状态s下的最大累积折扣奖励值,所述最大累积折扣奖励值对应的关节刚度为所述机器鱼关节当前的最优关节刚度。
一种实施方式中,在实施例二的基础上,所述PID控制模块530,包括:
比例控制单元,用于将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数;根据所述比例系数,对所述差值error进行比例控制,获得第一输出信号;
积分控制单元,用于对所述差值error进行积分控制,获得第二输出信号;
微分控制单元,用于对所述差值error进行微分控制,获得第三输出信号;
叠加单元,用于对所述第一输出信号、所述第二输出信号和所述第三输出信号进行叠加处理,获得所述当前最优力矩。
上述各实施例及实施方式中,所述Q表的建立方法为:
(1)初始化Q表,学习速率α,折扣因子γ;
(2)选择起始状态st;
(3)依据预设概率∈-greedy,选择当前st下的一个动作at;
(4)执行动作at,获得奖励值rt+1,转移到下一个状态st+1;
(5)重复步骤(3),选取动作at+1;
(6)根据如下公式更新Q表:
Q(st,at)←Q(st,at)+αt[r(st,at)+γmaxQ(st+1,at+1)-Q(st,at)];
(7)再从步骤(3)开始循环执行,直到Q表收敛。
图6为本申请实施例三提供的电子设备的结构示意图,如图6所示,该设备包括:存储器601和处理器602;
存储器601,用于存储计算机程序;
其中,处理器602执行存储器601中的计算机程序,以实现如上所述各方法实施例所提供的方法。
在实施例中,以一电子设备对本申请提供的机器鱼的控制装置进行示例。处理器可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备中的其他组件以执行期望的功能。
存储器可以包括一个或多个计算机程序产品,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器可以运行程序指令,以实现上文的本申请的各个实施例中的方法以及/或者其他期望的功能。在计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
本申请实施例四提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序被处理器执行时用于实现如上所述各方法实施例所提供的方法。
实际应用中,本实施例中的计算机程序可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,程序设计语言包括面向对象的程序设计语言,诸如Java、C++、python等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
实际应用中,计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
前述对本申请的具体示例性实施方案的描述是为了说明和例证的目的。这些描述并非想将本申请限定为所公开的精确形式,并且很显然,根据上述教导,可以进行很多改变和变化。对示例性实施例进行选择和描述的目的在于解释本申请的特定原理及其实际应用,从而使得本领域的技术人员能够实现并利用本申请的各种不同的示例性实施方案以及各种不同的选择和改变。本申请的范围意在由权利要求书及其等同形式所限定。
Claims (10)
1.一种机器鱼的控制方法,其特征在于,包括:
获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error;
根据关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ,从预先建立的Q表中获取所述机器鱼关节当前的最优关节刚度;
将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数,并对所述差值error进行PID控制,获得当前最优力矩;
控制所述关节电机对所述机器鱼关节进行驱动,以使所述机器鱼关节的力矩为所述当前最优力矩,并再次执行所述获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error的步骤;
其中,所述Q表是以关节电机输出的负功功率P和机器鱼关节的第一角度θ构成的状态s为输入,以机器鱼关节的关节刚度为输出,采用强化学习算法建立的;所述Q表记录了每个状态s对应的每个动作获得的累积折扣奖励值,所述动作为关节刚度。
2.根据权利要求1所述的方法,其特征在于,所述根据关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ,从预先建立的Q表中获取所述机器鱼关节当前的最优关节刚度,包括:
所述关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ构成当前状态s;
从预先建立的Q表中获得所述当前状态s下的最大累积折扣奖励值,所述最大累积折扣奖励值对应的关节刚度为所述机器鱼关节当前的最优关节刚度。
3.根据权利要求1所述的方法,其特征在于,所述将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数,对所述差值error进行PID控制,获得当前最优力矩,包括:
将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数;
根据所述比例系数,对所述差值error进行比例控制,获得第一输出信号;
对所述差值error进行积分控制,获得第二输出信号;
对所述差值error进行微分控制,获得第三输出信号;
对所述第一输出信号、所述第二输出信号和所述第三输出信号进行叠加处理,获得所述当前最优力矩。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述Q表的建立方法为:
(1)初始化Q表,学习速率α,折扣因子γ;
(2)选择起始状态st;
(3)依据预设概率∈-greedy,选择当前st下的一个动作at;
(4)执行动作at,获得奖励值rt+1,转移到下一个状态st+1;
(5)重复步骤(3),选取动作at+1;
(6)根据如下公式更新Q表:
Q(st,at)←Q(st,at)+αt[r(st,at)+γmaxQ(st+1,at+1)-Q(st,at)];
(7)再从步骤(3)开始循环执行,直到Q表收敛。
5.一种机器鱼的控制装置,其特征在于,包括:
获取模块,用于获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error;
强化学习模块,用于根据关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ,从预先建立的Q表中获取所述机器鱼关节当前的最优关节刚度;
PID控制模块,用于将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数,并对所述差值error进行PID控制,获得当前最优力矩;
驱动模块,用于控制所述关节电机对所述机器鱼关节进行驱动,以使所述机器鱼关节的力矩为所述当前最优力矩,并再次执行所述获取机器鱼关节当前的第一角度θ与预设的第二角度θgiven的差值error的步骤;
其中,所述Q表是以关节电机输出的负功功率P和机器鱼关节的第一角度θ构成的状态s为输入,以机器鱼关节的关节刚度为输出,采用强化学习算法建立的;所述Q表记录了每个状态s对应的每个动作获得的累积折扣奖励值,所述动作为关节刚度。
6.根据权利要求5所述的装置,其特征在于,所述关节电机当前输出的负功功率P和所述机器鱼关节当前的第一角度θ构成当前状态s;
所述强化学习模块,具体用于从预先建立的Q表中获得所述当前状态s下的最大累积折扣奖励值,所述最大累积折扣奖励值对应的关节刚度为所述机器鱼关节当前的最优关节刚度。
7.根据权利要求5所述的装置,其特征在于,所述PID控制模块,包括:
比例控制单元,用于将所述最优关节刚度作为比例-积分-微分PID控制器的比例系数;根据所述比例系数,对所述差值error进行比例控制,获得第一输出信号;
积分控制单元,用于对所述差值error进行积分控制,获得第二输出信号;
微分控制单元,用于对所述差值error进行微分控制,获得第三输出信号;
叠加单元,用于对所述第一输出信号、所述第二输出信号和所述第三输出信号进行叠加处理,获得所述当前最优力矩。
8.根据权利要求5-7任一项所述的装置,其特征在于,所述Q表的建立方法为:
(1)初始化Q表,学习速率α,折扣因子γ;
(2)选择起始状态st;
(3)依据预设概率∈-greedy,选择当前st下的一个动作at;
(4)执行动作at,获得奖励值rt+1,转移到下一个状态st+1;
(5)重复步骤(3),选取动作at+1;
(6)根据如下公式更新Q表:
Q(st,at)←Q(st,at)+αt[r(st,at)+γmaxQ(st+1,at+1)-Q(st,at)];
(7)再从步骤(3)开始循环执行,直到Q表收敛。
9.一种电子设备,包括:存储器和处理器;
所述存储器,用于存储计算机程序;
其中,所述处理器执行所述存储器中的计算机程序,以实现如权利要求1-4中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现如权利要求1-4中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910420732.9A CN110262218A (zh) | 2019-05-20 | 2019-05-20 | 机器鱼的控制方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910420732.9A CN110262218A (zh) | 2019-05-20 | 2019-05-20 | 机器鱼的控制方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110262218A true CN110262218A (zh) | 2019-09-20 |
Family
ID=67914880
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910420732.9A Pending CN110262218A (zh) | 2019-05-20 | 2019-05-20 | 机器鱼的控制方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110262218A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111191399A (zh) * | 2019-12-24 | 2020-05-22 | 北京航空航天大学 | 机器鱼的控制方法、装置、设备及存储介质 |
CN112631120A (zh) * | 2019-10-09 | 2021-04-09 | Oppo广东移动通信有限公司 | Pid控制方法、装置和视频编解码系统 |
CN113050565A (zh) * | 2021-03-12 | 2021-06-29 | 北京航空航天大学杭州创新研究院 | 闸门控制方法和装置、电子设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101315563A (zh) * | 2007-05-31 | 2008-12-03 | 中国科学院自动化研究所 | 基于重心改变的仿生机器鱼深度控制方法 |
CN101466111A (zh) * | 2009-01-13 | 2009-06-24 | 中国人民解放军理工大学通信工程学院 | 基于政策规划约束q学习的动态频谱接入方法 |
US7865268B2 (en) * | 2004-06-24 | 2011-01-04 | Massachusetts Institute Of Technology | Mechanical fish robot exploiting vibration modes for locomotion |
CN102207928A (zh) * | 2011-06-02 | 2011-10-05 | 河海大学常州校区 | 基于强化学习的多Agent污水处理决策支持系统 |
CN105022269A (zh) * | 2015-07-13 | 2015-11-04 | 北京航空航天大学 | 仿生机器鱼关节的控制方法及装置 |
EP2990890A1 (en) * | 2014-08-29 | 2016-03-02 | General Electric Company | Method and system of adaptive model-based control for multiple-input multiple-output plants |
CN107161307A (zh) * | 2017-05-12 | 2017-09-15 | 上海湖益科贸有限公司 | 一种适用于船艇的扭簧串仿生鱼尾桨 |
CN108445742A (zh) * | 2018-02-07 | 2018-08-24 | 广东工业大学 | 一种气悬浮平台的智能pid控制方法 |
CN108873686A (zh) * | 2018-07-03 | 2018-11-23 | 北京华悦龙驰科技有限公司 | 一种用于串联弹性驱动器的控制方法 |
-
2019
- 2019-05-20 CN CN201910420732.9A patent/CN110262218A/zh active Pending
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7865268B2 (en) * | 2004-06-24 | 2011-01-04 | Massachusetts Institute Of Technology | Mechanical fish robot exploiting vibration modes for locomotion |
CN101315563A (zh) * | 2007-05-31 | 2008-12-03 | 中国科学院自动化研究所 | 基于重心改变的仿生机器鱼深度控制方法 |
CN101466111A (zh) * | 2009-01-13 | 2009-06-24 | 中国人民解放军理工大学通信工程学院 | 基于政策规划约束q学习的动态频谱接入方法 |
CN102207928A (zh) * | 2011-06-02 | 2011-10-05 | 河海大学常州校区 | 基于强化学习的多Agent污水处理决策支持系统 |
EP2990890A1 (en) * | 2014-08-29 | 2016-03-02 | General Electric Company | Method and system of adaptive model-based control for multiple-input multiple-output plants |
CN105022269A (zh) * | 2015-07-13 | 2015-11-04 | 北京航空航天大学 | 仿生机器鱼关节的控制方法及装置 |
CN107161307A (zh) * | 2017-05-12 | 2017-09-15 | 上海湖益科贸有限公司 | 一种适用于船艇的扭簧串仿生鱼尾桨 |
CN108445742A (zh) * | 2018-02-07 | 2018-08-24 | 广东工业大学 | 一种气悬浮平台的智能pid控制方法 |
CN108873686A (zh) * | 2018-07-03 | 2018-11-23 | 北京华悦龙驰科技有限公司 | 一种用于串联弹性驱动器的控制方法 |
Non-Patent Citations (2)
Title |
---|
卢守峰: "《基于强化学习理论的交通控制模型研究》", 30 September 2015 * |
张叶蒙: "多仿生机器鱼协调控制研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112631120A (zh) * | 2019-10-09 | 2021-04-09 | Oppo广东移动通信有限公司 | Pid控制方法、装置和视频编解码系统 |
CN112631120B (zh) * | 2019-10-09 | 2022-05-17 | Oppo广东移动通信有限公司 | Pid控制方法、装置和视频编解码系统 |
CN111191399A (zh) * | 2019-12-24 | 2020-05-22 | 北京航空航天大学 | 机器鱼的控制方法、装置、设备及存储介质 |
CN111191399B (zh) * | 2019-12-24 | 2021-11-05 | 北京航空航天大学 | 机器鱼的控制方法、装置、设备及存储介质 |
CN113050565A (zh) * | 2021-03-12 | 2021-06-29 | 北京航空航天大学杭州创新研究院 | 闸门控制方法和装置、电子设备及存储介质 |
CN113050565B (zh) * | 2021-03-12 | 2022-05-20 | 北京航空航天大学杭州创新研究院 | 闸门控制方法和装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Xu et al. | An end-to-end differentiable framework for contact-aware robot design | |
CN110262218A (zh) | 机器鱼的控制方法、装置、设备及存储介质 | |
US10962976B1 (en) | Motion control method and system for biomimetic robotic fish based on adversarial structured control | |
CN113190029B (zh) | 基于深度强化学习的四足机器人适应性步态自主生成方法 | |
Hošovský et al. | Model-based evolution of a fast hybrid fuzzy adaptive controller for a pneumatic muscle actuator | |
EP4010847A1 (en) | Training action selection neural networks using hindsight modelling | |
Rajendra et al. | Particle swarm optimization algorithm vs genetic algorithm to develop integrated scheme for obtaining optimal mechanical structure and adaptive controller of a robot | |
Zhang et al. | Friction modulation in limbless, three-dimensional gaits and heterogeneous terrains | |
Goher et al. | Bacterial foraging-optimized PID control of a two-wheeled machine with a two-directional handling mechanism | |
Li et al. | The Gait Design and Trajectory Planning of a Gecko‐Inspired Climbing Robot | |
Chang et al. | Research on manipulator tracking control algorithm based on RBF neural network | |
Jebellat et al. | A reinforcement learning approach to find optimal propulsion strategy for microrobots swimming at low reynolds number | |
Zhong et al. | A general kinematic model of fish locomotion enables robot fish to master multiple swimming motions | |
Zhang et al. | Parameter optimization of eel robot based on NSGA-II algorithm | |
Liu et al. | Tunable stiffness caudal peduncle leads to higher swimming speed without extra energy | |
Andreuchetti et al. | A survey on brachiation robots: An energy-based review | |
Chen et al. | QPSO-MPC based tracking algorithm for cable-driven continuum robots | |
Liu et al. | Shape memory alloy driven soft robot design and position control using continuous reinforcement learning | |
Nowshiravan Rahatabad et al. | Combination of reinforcement learning and bee algorithm for controlling two-link arm with six muscle: simplified human arm model in the horizontal plane | |
Ou et al. | Support vector machine based approach for abstracting human control strategy in controlling dynamically stable robots | |
Mombaur et al. | Model-based optimization for robotics | |
Li et al. | Reinforcement learning strategy based on multimodal representations for high-precision assembly tasks | |
Nakajima et al. | Control of a snake robot for passing through a self-closing door | |
Zheng et al. | Joint elasticity produces energy efficiency in underwater locomotion: Verification with deep reinforcement learning | |
Sugiyama et al. | Latent Representation-Based Learning Controller for Pneumatic and Hydraulic Dual Actuation of Pressure-Driven Soft Actuators |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190920 |
|
RJ01 | Rejection of invention patent application after publication |