基于FA-NAR神经网络预测人体运动意图

2021-07-20 00:04李露王琪陈鑫杰曹鑫杨柠滔刘子璇曾蔡旭戴亮
现代计算机 2021年15期
关键词:延时萤火虫下肢

李露,王琪,陈鑫杰,曹鑫,杨柠滔,刘子璇,曾蔡旭,戴亮

(湖南财政经济学院,长沙410205)

0 引言

下肢外骨骼机器人是一种帮助人们行走、强化人体运动机能的机电一体化装备,作为一种精准辅助人体运动的设备,它需要做到时刻与人体的思想及动作高度契合,实现“所思即所动”的运动控制状态,达到这种理想控制状态的关键问题之一即是人体与机体之间的交互控制[1]。

近年来,科学家们在外骨骼机器人领域取得的巨大进展受到了社会各界人士的关注和认可[2-3]。2000年,美国伯克利大学机器人和人体工程实验室自主研发制造出了第一代下肢外骨骼机器人——BLEEX下肢助力外骨骼机器人,其最显著的特征是结合融汇了多种传感器的感知信号,来全方位感知和预测人体的运动意图[4]。2004年,筑波大学的山海嘉之(Yoshiyuke Sankai)教授在日本政府的资助下,创建成立了Cyberdyne公司,其自主研发完成的HAL系列机器人成为了首个获得全球安全认证(ISO/DIS 13482)的外骨骼机器人产品。HAL系列机器人投入市场后主要应用于医疗和养老机构,帮助下肢运动不便的人们进行康复性训练[5]。

目前,下肢助力外骨骼机器人相关研究面临众多技术难题,其中,人体运动意图感知技术是一项重要研究内容。研究者们通过深入探索人体变换行走动作时下肢的运动机理探究出了能够表征人体下肢行为的反馈信号,并利用其中有效的反馈信号建立了下肢康复机器人感知系统,并根据感知系统产生的多源异构信息特征提出了将多种信息融汇在一起的预测算法,从而获得人体下一时刻的运动趋势。国内现有的关于下肢机器人的研究中人体运动信息的感知方法主要包含基于人体生物电信号和基于人机交互力学信息这两种方式。基于人体生物电信号的方法是指通过解析人体产生的脑电(EEG)和肌电(EMG)[6]等信号,找寻其中蕴含的人体运动信息。EMG能够很好地反映出肌肉的运动意图,但是使用这种方法时需要肌肉传感器与人体皮肤表面紧紧贴合,人体皮肤表面的出汗会影响测量的精准度,也很难保证传感器能够长时间粘附在人体表面不脱落[7]。相对来说,信息反馈较好的是物理交互类信号。物理交互类信号对穿戴人员的影响较小,更易于实验阶段研究者在人体和机器设备上进行改动和布局。用户运动学信息或力/力矩信息统称为物理交互类信号,如下肢在摆动过程中的角度、速度、加速度、人体下肢关节与机器人之间的交互力、交互力矩以及地面反作用力等,这些都是可以用来捕获人体运动意图的物理交互类信号。

1 相关研究研究现状

近年来,新的预测算法逐渐出现在大众视野,如基于人工神经网络的预测算法。系统预测是神经网络预测算法应用的一大领域,利用神经网络能够通过学习来逼近非线性函数的特性,将其作为核心算法应用于非线性系统的建模和预测过程,以此来摆脱非线性模型对常规算法的限制,大大降低了人们在探究人体运动意图的研究难度。

人工神经网络依据是否含有反馈环节和记忆功能被分为静态神经网络和动态神经网络。BP神经网络是典型的静态神经网络,没有反馈环节也没有记忆功能,当前的输入和输出与以前的输入和输出没有关系,网络的泛化能力有限,且模型不适用于新增样本的连续变化,所以此方法不建议用于解决与时间序列有关的预测问题。本文需要测试的足底压力数据样本总数很大,若使用BP神经网络,每增加一个样本都要重新进行训练,将会存在消耗时间多、计算效率低、储存空间大等问题[8]。卷积神经网络(Convolutional Neural Network,CNN)可以直接把图像作为CNN的输入,避免了针对数据的许多复杂的操作步骤。它还可以将特征提取功能融合进神经网络中,从而实现对隐式特征的提取和利用。动态神经网络中的权值共享通过减少神经网络的训练参数来达到降低神经网络复杂度的目的,于此同时,神经网络的训练参数的减少还可以让训练神经网络进行并行学习,加快了神经网络的训练速度。其缺点是,架构中网络参数众多,其使用的前提条件必须进行大量的标签样本训练才能完成模型的构建[9]。

NAR神经网络以其优秀的反馈调节功能和记忆功能成为了机器学习和人工智能领域的一大代表神经网络。它的学习与锻炼过程主要是利用系统之前已有的测试数据和变化规律来预测未来的发展趋势,甚至拥有能够向前推演很长一段时间的能力,所以在建立一些长期预测系统时,时常需要它的帮助。在做到“举一反三”的同时,NAR神经网络还能“温故而知新”。NAR神经网络也是滚动预测模型的一种,已经被输出的预测值也可以作为它的输入值,重新组成新的学习训练样本,对下一阶段的情况进行预测。

本文利用足底压力数据,设计了基于动态神经网络的预测算法,在同一个支撑期预测穿戴者足底压力期望值,同时满足准确性和实时性。针对人体下肢行为的动态性和不确定性、对空间的敏感性、非线性、高度复杂性等特征,为提高对人体下肢运动意图的预测精度。采用了萤火虫算法(FA)搜索确定延时阶数和隐含层单元个数,并利用非线性自回归(NAR)动态神经网络进行预测,提出基于FA-NAR动态神经网络的面向下肢助力外骨骼机器人的人体运动意图预测系统,结合人正常行走和踏步时的步态分析数据进行预测,最后通过仿真实验验证了方法的有效性。

2 FA-NAR神经网络原理

2.1 萤火虫算法原理

萤火虫原理是根据自然界中萤火虫种群之间传递信息的方式演化而来的一种启发式算法,其参数少、实现简单、结果的精确度较高。该算法将自然界中的优胜劣汰比作在搜索和优化过程中寻找最优解的过程。刚开始时,萤火虫在一定的空间之内会自主随机分布,但亮度低的萤火虫会被吸引着向着亮度高的萤火虫停留的方向飞去,亮度高的萤火虫本身会随机移动,通过不断的位置的更新来寻求最优的位置。在萤火虫算法里面,萤火虫的吸引力与其亮度成正比,与其距离成反比。亮度稍大一些的萤火虫会吸引另外一些亮度小的萤火虫,但是由于其自身的随机移动,可能导致与其他的萤火虫的距离变大,从而导致其吸引力减弱。萤火虫算法的机制如下。

高亮度萤火虫对低亮度萤火虫吸引力的大小取决于萤火虫之间的相对位置、初始位置时的荧光亮度以及在黑暗中被吸收的光,因此荧光亮度的表达式为:

其中I表示萤火虫荧光亮度,I0表示初始位置时萤火虫的亮度即最大荧光亮度,γ表示萤火虫对光照的吸收系数,在一般的优化问题中γ为在[0.01-100)区间内的常数。r为两只萤火虫在二维空间的距离。其计算公式如下:

式中:rij表示i时刻与j时刻萤火虫之间的距离,xi表示萤火虫i的位置,xj表示萤火虫j的位置,N为萤火虫数目,xi,k为萤火虫i的第k个分量,xj,k为萤火虫j的第k个分量。

吸引度函数表示为:

式中:β表示萤火虫之间的吸引度和距离之间的关系,β0为每一只萤火虫的最大吸引度,即每只萤火虫在光源处(r=0)的吸引度,参数m通常取值为2。

位置更新函数为:

式中:xi(t+1)表示萤火虫xi第t+1次移动后的位置,xi(t)表示萤火虫xi第t次移动后的位置,xj(t)表示萤火虫xj第t次移动之后的位置,α表示步长因子是[0,1]范围内的常数,rand为[0,1]范围内服从均匀分布的随机因子。

式中:MSE表示预测值与实际值的方差,n表示推广的预测步数,d表示推广预测步数所需要的前面的步数(即延时阶数),yi表示第i时步的预测值,yi'表示第i时步的预测值[10-12]。

2.2 基于FA-NAR神经网络的足底压力预测算法

FA-NAR神经网络任然采用NAR的三层神经网络,其算法模型为f(t)=f[(t-1),(t-2),(t-3)…(t-d)],f(t)为t时刻的输出,f[(t-1),(t-2),(t-3)…(t-d)]为t时刻之前的输出。d为延时阶数,f[]为经过学习训练得到的非线性函数。FA-NAR神经网络有输入层、输出层、隐含层和延时阶数四个部分组成。图中左边y(t)表示网络的数据输入,w表示权值,b为阈值,1:3为延时阶数,22表示隐含层单元个数。

图1 FA-NAR神经网络算法模型

在对人体运动进行预测的时候,下一步的运动趋势与前面获取的数据紧密相关,要对人体的步态趋势进行预测,就是要寻找p时刻的运动趋势和p时刻之前的运动之间的函数关系。即f(p)=f[(p-1),(p-2),(p-3)…(p-n)],这与FA-NAR神经网络的模型高度一致,因此我们选用FA-NAR神经网络来预测人的运动趋势。

FA-NAR神经网络利用萤火虫算法的原理来寻找最优的隐含层个数和延时阶数,在该神经网络中,将隐含层的初始个数和延时的阶数视为萤火虫的初始位置,然后设定萤火虫的种群规模n、迭代次数N-iteration、萤火虫之间的吸引度β、步长因子α、光吸收系数γ。然后设定好隐含层个数的范围以及延时阶数的范围,通过不断的迭代运行,最终求出在该范围里面最优的隐含层个数和延时阶数。最后将求出来的最优解返回到神经网络中来进行预测。

2.3 数据在神经网络中的处理过程

2.3.1 数据的采集

图2 压力数据收集器

在收集数据过程中,我们选择30名18-23岁的年轻人作为测试样本,该样本男女性别比例相当,搭建数据采集模块,通过贴片式压力传感器和编码器采集测试人员行走过程中足底压力喝下肢关节数据,经过滤波等处理,作为FA-NAR神经网络的输入数据样本。

2.3.2 数据的处理

FA-NAR神经网络获得数据样本之后,对神经网络里面的延时阶数和隐含层单元个数进行设定。根据(1)(2)(3)式确定FA-NAR神经网络中延时阶数和隐含层个数这两个参数的各自的吸引力,之后然后根据(4)式所计算出来的t时刻之后的位置来进行位置更替。位置更替完成后,通过(5)式来计算获得的数据的误差,只有在误差允许以内的最优解才会被传回神经网络来进行下一步的训练。通过返回的隐含层单元个数以及延时的阶数,来构建新的神经网络来对数据进行处理、预测。萤火虫算法在神经网络中的处理过程如图3所示。

图3 萤火虫算法在神经网络中的处理过程

4 FA-NAR算法的数据分析以及数值实验

在相同输入数据下NAR神经网络和FA-NAR神经网络的真实值与预测值以及误差值的输出对比如图4所示。

图4 NAR神经网络真实值与预测值对比

图4、图5是NAR神经网络与FA-NAR神经网络的真实值与预测值的对比,其中图的横轴表示时间(ms),纵轴表示足底压力值(N)。若真实值与预测值的曲线贴合的越紧密,说明拟合的效果越好,神经网络的预测效果要更好。

图5 FA-NAR神经网络的真实值与预测值对比

网络效果误差图(即图中的Error输出图像)中竖直的线段表示真实值与预测值之间的误差,所以误差线段越短,即误差区间越小表示网络预测效果要越好。

从两图中可以看出优化前的NAR神经网络(图4)的误差值处于-120~200之间,说明网络预测效果比较差。但用萤火虫优化后的NAR神经网络(图5),在竖直方向的误差值处于-110~200之间,且FA-NAR的误差值在拟合过程中有近60%的误差值较小,而NAR的仅有50%误差值较小。FA-NAR网络预测效果较之前要好很多。表明FA-NAR动态神经网络的预测精度较高,能够更好地做人体运动意图预测分析。

图6、图7的误差相关性图中如果误差自相关性除零阶以外其他阶数自相关性矩形条在95%置信区间(即两条红色虚线)以内越多,则说明相关性越强,误差越小。从图上可以看出使用了FA萤火虫后的nar网络有92.5%以上相关性矩形条处于95%置信区间内,而原来的nar神经网络只有82.5%相关性矩形条位于95%置信区间内。

图6 NAR神经网络误差图

图7 FA-NAR神经网络误差图

图8 NAR神经网络

图9 FA-NAR神经网络

由表1可知,采用FA-NAR神经网络预测的平均相对误差约为NAR神经网络的3/4,FA-NAR均方误差约为NAR神经网络的1/2,说明FA-NAR神经网络的预测精度比NAR神经网络的预测精度更高。

表1 FA-NAR和NAR精度指标

表2是行走时足底不同部位压力值的NAR神经网络预测准确率,表3是行走时足底不同部位压力值的FA-NAR神经网络预测准确率。图中的脚前掌有两个检测压力的传感器(具体见图3),故分为左右两个测试点。从两表可以看出FA-NAR神经网络的各个部位预测正确率均大于NAR神经网络的各部分预测正确率。

表2 行走时NAR神经网络的预测精度

表3 行走时FA-NAR神经网络的预测精度

5 结语

外骨骼机器人与穿戴者在时间上、动作上应该具有高度的协调一致性,解决这一问题的关键是在于如何让外骨骼更好地理解人体的运动意图,从而做出正确的响应。通过实验预测分析结果来看,FA-NAR优化之后的动态神经网络模型的预测精度比NAR神经网络模型的更高。

猜你喜欢
延时萤火虫下肢
课后延时服务
术后强化护理预防下肢骨折老年患者便秘及下肢静脉血栓发生的研究
高频超声联合彩超在下肢深静脉血栓中的诊断价值
课后延时中如何优化不同年级学生活动效果
下肢最怕“凉、麻、痛”
萤火虫
萤火虫
一种“死时间”少和自动校准容易的Wave Union TDC
抱抱就不哭了
夏天的萤火虫