基于Rulkov神经元模型的四足机器人适应性行走控制

2019-08-07 01:53刘成菊林立民陈启军
关键词:运动神经元坡面髋关节

刘成菊, 林立民, 陈启军

(同济大学 电子与信息工程学院, 上海 201804)

由于足式机器人关节结构上的复杂性,实现其行走控制一直是机器人领域的研究难题.近年来,相关领域的研究人员试图从仿生的角度探索新的足式机器人行走控制方法,其中关注度较高的是一种基于中枢模式发生器(CPG)的运动控制方法[1-3].从生物学的角度看,CPG是指存在于无脊椎动物和脊椎动物体内的中枢神经系统中的神经元电路.其控制下的生物体的运动具有极好的节律性,一旦开始就能够在缺乏大脑皮层等高级神经中枢参与下自主地、持续性地进行下去,中间不需要大脑来参与思考、计算和分析,具有结构简单,运动模式多样和适应性强的优点[4-5].

为了利用这一生物CPG作用机理,相关领域的研究工作人员尝试了多种CPG数学模型.目前关于CPG的建模研究主要有两种策略,一类是基于神经元的CPG模型,该类模型模拟了生物神经元动作电位的产生与动态特性,研究了神经元节律性输出的产生机理及反馈信息对神经元输出的作用方式.典型的是Matsuoka模型[6-9],Hodgkin和Huxley提出的H-H模型[10-11],Morris-Lecar模型[12],Rulkov模型[13-14]等.日本学者Fukuoka等[8]改进了Matsuoka模型,通过在CPG神经网络间引入屈肌、伸肌等基本生物反射,成功控制四足机器人Tekken生成前摆、上摆和回落支撑三种基本模态.此类基于神经元的单层CPG模型可生成类似于正弦波的节律性信号,模型对外界传感信息的响应通过调整节律性振荡信号的幅值、频率和相位完成.另一类是利用非线性振荡器来建模CPG,较具有代表性的有Kuramoto模型、Hopf模型等.Rutishauser等[15]采用基于Hopf振荡器的CPG,以轻、快、稳为设计目标,实现了对猎豹机器人Cheetah的行走步态控制,该四足机器人具有一定的环境适应性.这种采用具有极限环特性的非线性振荡器作为CPG单元,主要是从整体特性考虑,研究单元间的耦合方式,调整模型参数使整个网络的输出逼近生物CPG的整体输出特性.这些单层CPG模型在一定程度上能模拟生物CPG的一些特性,符合生物神经元的部分响应特性,模型相对简单,便于某些工程应用,例如,机器蛇的爬行,机器鱼的游动等[16-17].而随着CPG研究的深入,国内外相关学者开始对单层CPG进行分层设计[18-20],并在各层之间引入更丰富的反馈信息通路,从而缩短响应时间,达到更好的实时控制效果.但是多层CPG的网络结构较为复杂,各层之间的反馈信息存在非线性耦合,如何对反馈信息进行协调尚且缺乏相关的理论研究.为此,本文采用基于Rulkov神经元的单层CPG建模方式,其能够模仿生物CPG的电位特性,大多数神经元参数具有明显的生物学意义,便于按照膜电位的输出调整神经元的参数.

对于四足机器人行走控制来说,稳定性、协调性和适应性是非常重要的三个指标.在稳定性方面,CPG方法由于自身的极限环特性,不但可以保证在遇到干扰时迅速恢复到先前的运动状态,也可以保证机器人从一种运动状态迅速转换到另外一种运动状态,即完成步态转换.在协调性方面,由于CPG网络可以通过优化CPG单元间的耦合系数来产生协调的关节控制信号,即使受到干扰,这样的协调性也可以得到保证.在适应性方面,通过CPG网络与环境的相互作用,可以产生具有环境适应性的机器人关节控制信号,以达到环境适应性行走的目的.目前基于CPG的控制方法多数是在关节空间内抽象利用CPG.其基本思想是利用CPG网络来协调控制机器人的多自由度,通过改变CPG的参数来调整机器人的运动模式.本文基于这一思想来研究四足机器人关节空间轨迹生成与自适应行走控制.

本文内容大致分为三部分:首先,基于函数映射设计了新的多关节耦合的CPG网络控制结构.采用四个CPG单元构成分布式控制网络控制四足机器人的膝关节,并利用动物同一条腿的膝髋关节具有固定相位关系的特点,来映射产生机器人髋关节自由度的控制信号.即构造“膝-髋”关节映射函数,将四足机器人同一条腿膝关节和髋关节耦合在一起进行控制.设计方案在保证CPG振荡单元能够保持同步的同时有效地减少了待优化的参数,降低了控制系统的复杂性;其次,以实现类似于四足动物的稳定行走步态为目标,引入多目标遗传算法来优化CPG网络参数,设计反映步态相位的适应性函数;最后,借用动物的前庭反射机理实现四足机器人坡面运动.分析动物在坡面行走时身体姿态和腿部动作的调整方式,建立前庭反射模型,实现机器人在坡面环境下的自适应行走.本文通过Webots仿真实验,验证了提出的CPG网络控制方法的可行性和有效性.

1 CPG模型机理建模和网络拓扑结构设计

1.1 Rulkov神经元模型

本文采用的CPG模型为Rulkov模型[13].其曾经在蛇形机器人的运动控制中得到较为成功的应用[14],本文是将它迁移到足式机器人控制中来.Rulkov模型数学描述如下:

(1)

xn+1=f(xn,yn+βeIn)

(2)

yn+1=yn-μ(xn+1)+μσ+μσeIn

(3)

式(1)~(3)描述的是一个二维Rulkov模型.式中:α、σ和μ(本文中取为0.001)是模型参数,通过设定不同的参数值可以使得神经元产生不一样的输出模式;变量xn代表CPG神经元的膜电压,而yn是一个慢动力学状态变量,没有直接的生物学意义;通过外部输入信号In建模,这一项对于CPG神经元间的协调和机器人的适应性行走来说至关重要,需要通过设定βe和σe取相应的值来实现,当βe=0,σe=1时,表明外部反馈信息直接对yn产生影响,而对xn的影响是间接的,而βe=1,σe=0则刚好相反;当βe=σe=1时则表明外部输入同时影响xn和yn.

图1a所示为单关节CPG控制结构示意图,利用两个相互耦合的Rulkov神经元E,F分别模拟伸肌和屈肌来构造半中枢振荡器M.其中,伸肌神经元给予运动神经元以正向的刺激,而屈肌神经元则给予运动神经元以反向的刺激.图1b所示为所构建的运动神经元的响应情况.伸肌与屈肌神经元参数设定如下:α=15,σ=-0.33,μ=0.001,σe=βe=1.突触参数和运动神经元参数选择为:λ=0.5,β=10,Esyn=9,g=1.5,[T]=1,γ=60,v=1.5,τrise=1.25,τfall=2.5,各个参数的详细意义参见文献[14].图1b中上面的图对应的是伸肌与屈肌神经元膜电位的输出,两者之间相互抑制,依次以正刺激和负刺激作用于运动神经元.当伸肌处于激活状态时,运动神经元的输出增加;当屈肌处于激活状态时,运动神经元的输出下降.图1b下图显示运动神经元的输出是周期性的持续振荡信号,可用于控制相应的机器人关节产生节律性的运动.

a 单关节CPG控制结构

b 运动神经元的输出

1.2 多关节网络拓扑结构设计

图2为本文所设计的多关节耦合的CPG单元网络拓扑结构图.同一关节的伸肌与屈肌神经元依然以抑制性突触进行连接.而不同关节的伸肌与伸肌间,屈肌与屈肌间也存在着突触结构,以此来耦合多个实际的关节.关节的最终输出由各自伸肌与屈肌的输出所决定.本文采用M1~M4四路CPG信号控制四足机器人的膝关节,它们之间的协调性由耦合系数gij所决定;而同一条腿上的膝-髋关节的协调性由协调函数映射f确定.f的具体映射关系将在下文中介绍.

多关节耦合的CPG网络结构数学描述如下:

图2 多关节耦合的CPG单元网络拓扑结构

(4)

(5)

(6)

各个关节之间的耦合程度由关节间的突触电导系数gij所确定,通过对gij的调节能够调整运动神经元输出信号的相位关系,从而控制各个关节完成时序性的输出.为此构建系数矩阵G为

(7)

下面主要通过相应的智能优化算法来优化模型参数矩阵G,从而控制运动神经元输出期望的关节信号.

2 基于多目标遗传算法的CPG单元耦合系数矩阵优化

由于构建的CPG数学模型的非线性特性,CPG的参数优化一直是一个较为繁琐的问题,仅仅使用模型特性分析的参数选择方式并不能达到较好的效果.为此,本文利用多目标遗传算法来优化CPG单元间的耦合系数矩阵.

2.1 优化目标

本文利用四关节的CPG网络拓扑结构输出四路CPG控制信号来控制四足机器人的膝关节.在本文中,期望能够控制四足机器人以“walk”的步态时序进行前向行走,即机器人的前腿之间以及后腿之间的相位差保持为π;而前腿与后腿间保持π/2的相位差,由此能够生成右前→左后→左前→右后的行走步态时序.

2.2 遗传算子设计

在本文的参数优化过程中,选择操作利用最优个体保存法,即直接选择适应度值最高的Nelite个个体取代适应度值最低的Nelite个个体;交叉算子和变异算子以均匀交叉和均匀变异的方式进行,先通过计算机随机生成与个体基因型同长度的屏蔽字c=[c1,c2,…,cn],如果屏蔽字的位ci取值为1,则将父代中对应位的配对基因发生互换.均匀交叉和均匀变异的操作方式可以保持种群基因的多样性,提高算法的全局搜索能力.

2.3 目标向量函数设计

目标向量函数的设计原则是为了保证4个关节输出信号间的相位差,使得机器人关节能够按照一定的时序发生动作.由信号相关分析法可知,两个同频率输出信号的相位差为

(8)

式中:Rxy为同频率输出信号x(t)和y(t)之间的互相关函数;Ax,Ay分别为两个信号的幅值.

假设m1(n)、m2(n)、m3(n)和m4(n)是4个关节的运动神经元输出信号序列,为达到控制目标,设计前腿间的目标函数为

(9)

后腿间的目标函数为

(10)

前后腿间的目标函数为

(11)

2.4 优化结果

CPG振荡器的运动神经元的参数设置见表1.这些参数的设置使得CPG振荡器对应的运动神经元能够输出四路同频率的振荡信号.接下来对这四路振荡信号的相位差做优化.

表1 运动神经元参数设置

依据表2遗传算法的参数设置情况对突触电导系数矩阵进行优化,在45代左右得到优化结果,此时得到优化的参数矩阵为

(12)

表2 遗传算法参数设置

图3对应算法的最终优化结果,4个关节运动神经元两两之间的相位差接近π/2,可以形成右前→左后→左前→右后的关节控制信号,符合最初的设想.由此,可以利用4个运动神经元的输出完成4个关节的节律性运动控制.

图3 遗传算法优化结果

2.5 与粒子群优化算法(PSO)的对比

PSO算法具有简单高效的特点,也常常被运用到参数的优化中.本小节将提出的多目标遗传算法与粒子群算法分别用于优化CPG单元间的耦合系数矩阵.

粒子群算法的速度和位置更新公式见式(13)和式(14).

Vi=wVi+c1(pbesti-xi)r+c2(gbest-xi)r

(13)

xi=xi+Vi,i=1,2,…,M

(14)

式中:Vi为粒子i的速度;w为非负惯性权重;c1和c2为两个学习因子;r为介于[0,1]之间的随机数;pbesti为粒子i历史上的最优位置;gbest为全局最优解;M为粒子群规模.相关参数设置情况见表3.为了对比两种优化算法,使粒子群算法的目标向量函数、粒子群规模和遗传代数与多目标遗传算法的设置相一致.

表3 粒子群算法参数设置

表4为两种优化算法8次实验的结果.总体而言,对于本文所需的优化目标,虽然粒子群算法的收敛代数有时候会明显优于遗传算法,但是该算法的运行结果与种群初始化有很大的关系,而多目标遗传算法的收敛代数的稳定性较好.由此,本文选择多目标遗传算法对耦合系数矩阵做优化.

表4 遗传算法与粒子群算法收敛代数比较

3 四足机器人节律性及适应性实验

本文使用的四足机器人是为图4所示的GhostDog机器狗.GhostDog机器狗的腿上含有膝关节(knee)和髋关节(hip),每个关节都含有一个旋转自由度.膝关节和髋关节的电机控制角度均为-90°~+90°.

图4 GhostDog四足机器人

图5所示为基于CPG的四足机器人行走控制的总体系统架构图.CPG控制单元是核心模块,它接收高层控制命令和信息融合反射系统呈递的反馈综合信息,用于产生机器人行走的控制信号.而CPG单元之间的协调关系由耦合系数决定,如式(7)所示.为达到相应的控制目的,使得CPG的输出信号是期望的电机位置或者力矩信号,运用多目标的遗传优化算法对耦合系数进行优化.

图5 系统架构示意图

3.1 平地行走实验

3.1.1膝-髋关节协调函数映射和控制信号的变换

为使GhostDog的前腿的髋关节相位能够略微超前膝关节,设计了前腿的膝-髋关节协调函数映射情况如下:

mfH(φ)=-mfK(φ+φdiff)

(15)

式中:mfH和mfK分别对应机器人前腿髋关节和膝关节的CPG控制信号;φ为膝关节相位;φdiff对应前腿膝-髋关节间的相位差.

后腿的膝-髋关节的协调函数映射情况如下:

(16)

为了将CPG的输出信号转换为GhostDog的关节角度信号,本文对前腿的膝关节和髋关节做控制变换,变换式如下:

θfK=mfKAfK+dfK

(17)

θfH=mfHAfH+dfH

(18)

式(17)和(18)中:mfK、mfH分别为CPG网络拓扑输出的GhostDog机器狗前腿膝关节和髋关节控制信号;θfK、θfH分别为实际的膝、髋关节电机控制信号;AfK、AfH分别为膝、髋关节幅值增益;dfK、dfH分别为变换补偿.

后腿的膝关节和髋关节控制变换如下:

θhK=mhKAhK+dhK

(19)

θhH=mhHAhH+dhH

(20)

式(19)和式(20)中各符号表示含义与式(17)符号含义类似.实验中控制信号的变换参数取值如表5所示.其中T为CPG输出信号的平均周期.

表5 控制信号的变换参数取值

在Webots上进行仿真,得到GhostDog机器狗的右前腿和右后腿的膝、髋关节映射结果如图6a和图6b所示.

3.1.2平地行走实验结果

GhostDog的行走控制结果如图7所示.机器人在平坦地面上行走时,相应的3个相平面上的运动输出如图8所示.横滚角、俯仰角、旋转角分别表示机器人绕x轴、y轴和z轴的旋转角度(坐标示意参见图4).从图8中可见,在3个关节角对应的相平面中,机器人的运动输出最终都收敛到稳定的极限环,这充分说明前面提出的控制策略可控制GhostDog与外界环境产生稳定的交互运动.需要指明的是,本文在设计实验时,加入了随机扰动因素,即地面并不是完全平坦的,而是在平坦的基础上随机增加了-1~1 cm的高度扰动.在这个扰动因素的影响下,本文提出的控制策略依旧可以稳定运行.

a 右前腿膝、髋关节映射结果

b 右后腿膝、髋关节映射结果

a 右前腿抬起

b 左后腿抬起

c 左前腿抬起

d 右后腿抬起

3.2 坡面自适应实验

3.2.1实验环境和控制策略

图9所示为进行坡面自适应实验的实验环境,整个行走过程包括平地行走,上坡(坡度角为15°),坡面平地行走和下坡(坡度角为15°)几个部分,坡面的动摩擦系数为0.05.为完成这一行走目标,需要设定各个环节的行走策略和不同环节之间的行走切换.

本文模拟人类的前庭反射机理,如果坡道的坡度角太大,先调整行走步长,然后下蹲降低重心和改变行走周期.图10a所示为机器人上陡坡时的调整策略.通过设立触地时间间隔的上限值Δtmax和下限值Δtmin,一旦检测到触地的时间间隔Δt小于Δtmin,就将机器人的行走模式切换为上陡坡模式,随即上调行走的步长A和行走频率Ψ,同时降低重心并使机器人重心前移.这些控制策略的实现都由CPG网络单元来实现,并最终作用到机器人关节对应的电机上.GhostDog平地行走的落地时间间隔Δt约为1.5 s,仿真中将相应的触地时间间隔的上、下限值设定为Δtmax=1.7 s,Δtmin=1.3 s.上坡时四足机器人适应性行走算法如表6对应的算法所示.按照这一控制方法,图10b对应上坡时右前腿膝关节和髋关节控制信号的输出情况.

a 横滚角与横滚角速度

b 俯仰角与俯仰角速度

c 旋转角与旋转角速度

图9 坡面实验环境示意图

a 上坡时调整策略

b 平地模式切换为上坡模式控制信号输出

表6 坡面适应性行走算法

而下坡时机器人的调整策略与上坡时刚好相反,为了避免机器人发生侧翻的现象,需要使机器人的重心后移.

3.2.2坡面实验结果

按照前文提出的控制策略,在Webots下对机器人坡面实验进行仿真,得到机器人右前腿膝、髋关节的电机角度输出如图11所示.图中还画出了各个阶段膝关节、髋关节的振荡中心,该值的变化反映了机器人重心的调整.在t=6~11 s时,机器人处在平地行走模式;t=11~18 s时,切换为上坡模式,由于重心的下移使得机器人以近似于爬行的姿态顺利上坡;t=18~27 s时,处于坡面上的平地行走模式;t=27 s后,又切换为下坡模式,此时机器人重心明显抬高.由图11电机角度输出的情况可知,前文所述的控制策略实现了GhostDog在坡面上的适应性行走.图12对应了GhostDog相应行走模式的切换.

图11 坡面实验右前腿膝、髋关节电机角度输出

3.2.3实验结果分析

图13所示为输出了有、无反馈条件下机器人上陡坡的俯仰角.有反馈的条件下,机器人调整重心顺利上坡,而无反馈时机器人原地踏步.注意到仿真时间为t=14~18 s时间段,虽然两段曲线的俯仰角输出都基本保持不变,但性质却是不同的:有反馈的输出曲线表明机器人处在上坡过程中并稳定上升,而无反馈的输出曲线表明机器人一直在坡道最低端踏步.

对机器人下陡坡的分析效果见图14.有反馈的条件下,一旦机器人检测到下坡环境,便立即抬高身体的重心并后移,而无反馈条件下机器人会失去平衡而摔倒.仿真时间t=27.4~27.6 s时间段的俯仰角变化情况说明了这一点.

b t=11 s切换为上坡模式

c t=15 s机器人上坡

d t=18 s切换为坡面行走模式

e t=22 s坡面行走模式

f t=27 s切换为下坡模式

图13 有、无反馈条件下机器人上坡俯仰角输出

有、无反馈条件下机器人上、下坡的俯仰角输出表明:本文设计的机器人信息融合反馈系统是合理的,其能够与本文提出的行走控制策略相结合.四足机器人能够利用反馈信息进行模式切换,从而达到坡面上适应性行走的目的.

图14 有、无反馈条件下机器人下坡俯仰角输出

4 结论

本文以四足机器人GhostDog作为被控对象,采用基于CPG的仿生控制理论,用Rulkov神经元模型对生物CPG结构进行机理建模,对四足机器人的平地行走和坡面自适应行走控制这两方面进行了研究.理论分析和仿真结果表明,提出的CPG行走控制理论和智能优化算法相结合可以协调四足机器人关节间的运动时序和保证机器人产生节律性的运动输出,维持平地行走的稳定性;基于信息融合反馈的CPG控制算法可以调整机器人的行走步长、行走频率和行走重心,生成适应性的行走模式.

猜你喜欢
运动神经元坡面髋关节
西藏派墨公路不同砾石磨圆度开挖坡面土壤侵蚀特征研究
辽西春季解冻期褐土工程堆积体坡面侵蚀特征
深水坡面岩基础施工方法
半髋关节与全髋关节置换治疗创伤性股骨颈骨折的临床疗效
运动神经元的模型研究方法
冰球守门员髋关节损伤与治疗
A Miracle of Love
为什么负重后手臂会发抖?
浅谈行进运动与脊髓运动神经元
成人型髋关节发育不良的分型与治疗