起立运动是人们日常生活中最基本的活动之一.肌力下降的老年人和膝关节受损的患者,往往难以完成起立运动[1],而使用外骨骼为他们提供必要帮助,可有效提高其生活质量,缓解社会老龄化压力.为在适当时刻提供适当辅助,外骨骼控制器须要精确预测穿戴者的起立意图[2].起立意图预测一直是外骨骼研究的核心问题之一.文献[3]使用测力平台离线确定起立过程的三个阶段,可据此在不同阶段提供对应辅助.文献[4]使用陀螺仪和加速度计预测起立时刻,预测平均误差为135 ms.文献[5-6]通过人机耦合模型估算人体关节力矩,检测人体运动意图.文献[7]用关节扭矩角速度等数据对坐、站、坐到站、站到坐进行分类预测,平均准确率为97.63%±0.01%.文献[8]使用肌电进行预测,可提前100~130 ms预测起立意图.但在实验室环境外,使用过多传感器为穿戴者带来不便[9],因此针对不同的使用环境,挑选合适的传感器、使用合适的数据进行预测至关重要.在静态状态下,人体为保持平衡,须要身体质心沿垂直方向的投影落在支撑基部内,但在动态状态下仅考虑质心位移不足以判断运动是否平衡[10],因为质心轨迹还受到运动速度和加速度的影响[11-12].如果质心落在支撑基部外,但运动方向指向支撑基部,那么依然可以保持身体平衡,而即使质心落在支撑基部内,但运动方向指向支撑基部外,仍有失稳风险.本研究据人体起立运动遵循的动态平衡规律,借鉴一种考虑起立运动速度的质心轨迹非线性处理手段,将质心轨迹直角坐标平面变换到动态平衡基准平面,降低特征数据对人体运动速度的依赖程度,提高起立意图判断准确性.在支持向量机预测过程中,根据外推质心的计算公式,构造具有明确生物力学含义的核函数,将质心横纵坐标组成的二维向量(Xcom,Ycom)作为输入进行预测,并与其他常用核函数的预测结果进行比较,结果显示使用外推质心核函数会有更好的预测效果.此外,本研究还使用神经网络算法,将质心横纵坐标与外推质心垂直投影组成的三维向量做为输入进行预测,对比二维向量预测结果,表明本研究所提方法预测效果更优.1 动态平衡分析1.1 动态平衡条件当外骨骼助力时,要保持起立过程处于动态平衡状态.在静态条件下,身体质心的垂直投影落在支撑基部内时,人可以保持平衡状态.但在动态条件下,须要在此基础上考虑速度对平衡状态的影响.本研究使用倒立摆模型研究动态平衡问题,模型如图1所示,图中:M为质心所在位置;Xcom为质心在垂直方向的投影;Ycom为质心在水平方向的投影;l为质心到脚踝的距离;u为地面反作用力Fr作用的中心位置;umax和umin分别为压力作用的最远位置和最近位置.10.13245/j.hust.240433.F001图1倒立摆模型对图示模型进行力学分析得(u-Xcom)mg=Iα,(1)式中:m为倒立摆的质量;g为重力加速度;I为转动惯量,I=ml2;α为角加速度,α≈-Xcom″/l.将I和α的表达式代入式(1)可以得到u-p=-lXcom″/g=-Xcom″/ω02,(2)式中:p为质心的横坐标;ω0=g/l为系统本征频率.求解线性二阶微分方程(2)可得Xcom(t)=u+(p0-u)cosh(ω0t)+(v0/ω0)sinh(ω0t), (3)式中p0和v0分别为质心的初始横坐标和初始速度.为保持起立过程平衡,须使质心垂直投影落在支撑基部内,即Xcom(t)≤u.(4)将式(3)代入式(4),可以得到(u-p0)≥(v0/ω0)tanh(ω0t).(5)由于-1≤tanh(ω0t)≤1,因此可以推得p0+v0/ω0≤u.(6)在静止状态下(v0=0),Xcom恒等于p0,当p0u时,即可满足平衡条件(4).在运动状态下(v0≠0),还须考虑速度对平衡造成的影响.本研究将这种考虑速度影响的质心称为外推质心.在运动过程中,当满足(6)式时,即外推质心的垂直投影落在支撑基部内,模型处于动态平衡状态.不等式(6)左侧即为外推质心计算公式,用Xe表示外推质心的垂直投影则可以得到Xe=Xcom+v/ω0.消去全部中间变量得到外推质心的计算公式为Xe=Xcom+dXcomdt2+dYcomdt21/2(Xcom2+Ycom2)1/4g1/2.1.2 起立过程分解起立过程可分为两个阶段[13],如图2所示,第一阶段躯体前倾,质心向前移动;第二阶段躯体离开座椅,质心向上移动.在第一阶段,质心垂直投影(Xcom)逐渐增加,水平投影(Ycom)逐渐减小;在第二阶段,Xcom在微小范围内变化,Ycom逐渐增加.10.13245/j.hust.240433.F002图2起立的两个阶段本研究将Ycom最小的时刻作为第一阶段到第二阶段的转折点并将其定义为起立时刻,外骨骼在这个时刻提供关节助力会起到较好的辅助效果.通过这种定义方式可以得到一个布尔类数据(即样本类别,用s表示),其中起立时刻前的采样点为-1,起立时刻及该时刻后的采样点为1.如此处理,起立时刻预测问题就转换成分类问题,s从-1变成1的时刻即为起立时刻.为避免预测噪声及突发干扰对外骨骼助力过程造成的影响,规定当且仅当s连续输出n个-1和m个1后提供助力.n和m越大,抗干扰能力越强,但距离最佳助力时刻越远;n和m越小,助力效果越好,但可能出现提前助力或在起立事件结束后多次助力.该过程可以表示为∑i=jnsi=-n;∑i=jn+msi=m-n;tpredict=Δt(j+m+n);tSTS=Δt(j+m+1),式中:Δt为每个采样点的实践间隔;tSTS为起立时刻;tpredict为预测时刻;m和n为正整数;si为s的第i个样本.2 预测方法2.1 支持向量机预测支持向量机分类任务的基本型是找到一个超平面ωTx+b=0将两类训练样本分开[14],其中:x为训练样本的向量表示;ω为法向量,维度与x相同;b为实数.为实现最好分类效果,须最大化间隔,使超平面两侧最近的样本点距离最大[15],即maxω,b(2/ω2);s.t.  si(ωTxi+b)≥1  (i=1,2,…,N),式中:N为样本数量;xi为第i个训练样本的向量表示.由此,分类问题被转换为优化问题,但无论是质心还是外推质心的运动轨迹都是连续的,如果使用一条截线直接将两类样本点分开,那么最近的两个样本点之间的距离一定是0,无法进行优化.因此,要允许一部分样本不满足约束条件,在最大化间隔的同时,使不满足约束的样本数量尽可能少,即minω,b12ω2+C∑i=1Nl0/1[si(ωTxi+b)-1];L0/1(z)=1  (z0),0  (其他), (7)式中:L0/1为损失函数;C为正则化参数,当C为无穷大时就迫使所有样本满足约束条件,当C取有限值时则允许一些样本不满足参数.取出相同组别的实验数据,分别以Xcom和Xe为横轴,Ycom为纵轴建立坐标系,可以得到质心和外推质心运动轨迹,如图3和图4所示,图中:曲线为轨迹;圆圈为起立时刻时的质心和外推质心坐标.过其中相距最远的两个质心/外推质心坐标做一条斜率为-1的截线,如图中直线所示.如果将直线内的区域当作是间隔带,允许其中的点不满足约束条件,通过计算可得Xcom-Ycom坐标系中的间隔带宽度为24 mm,Xe-Ycom坐标系中的间隔带宽度为15 mm.10.13245/j.hust.240433.F003图3Xcom-Ycom坐标系中的间隔带10.13245/j.hust.240433.F004图4Xe-Ycom坐标系中的间隔带从Xcom-Ycom坐标系到Xe-Ycom坐标系,间隔带两侧最近的两个样本点之间的距离减小,落入间隔带中的样本点数量会变少.这分别对应着式(7)中的两项数据,前一项数据得到负优化,后一项数据得到优化.因此,当选用合适的正则化参数时,将Xcom-Ycom坐标系中的点映射到Xe-Ycom坐标系中,即使用Xe,Ycom作为训练的输入数据,将s作为训练的输出数据会得到更准确的分类结果.但在实际预测过程中,没有必要将Xcom舍弃,可以将Xcom-Ycom作为原始空间中的两个变量,将Xe作为更高维度的特征量,从而完成从二维向量(Xcom,Ycom)到三维向量(Xcom,Ycom,Xe)的映射.本研究将该映射过程对应的核函数称为外推质心核函数,公式可表示为:k(x,y)=(ϕ(x),ϕ(y))=ϕ(x)Tϕ(y);ϕ(x)=(p1,p2,p1+dp1dt2+dp2dt21/2(p12+p22)1/4/g1/2,式中x和y为两组不同的二维输入向量,x由p1和p2组成.在后续验证过程中,会将该外推质心核函数与其他常见核函数的预测结果进行比对,验证该核函数在本问题上的可行性.2.2 神经网络预测本研究提前将Xe计算出来,直接将三维向量(Xcom,Ycom,Xe)用于训练.这样做可以将外推质心与其他数据组合成一个新的向量,共同预测起立时刻,如加入关节扭矩、关节角度、肌电信号和脑电波信等,可以针对不同情况挑选合适的数据做为输入信号,从而在非实验场所也能达到较好的预测效果.在预测过程中,如果直接使用神经网络对数据进行分类,那么存在如下两个问题:a.泛化误差较大,训练集的预测准确率大于99%,但在测试集上的预测准确率有所下降;b.预测结果中错误相对分散,真实数据中的s在起立时刻前为-1,起立时刻后为1,但神经网络预测结果中会在连续的-1中出现少量1,这对预测准确率的影响较小,但可能会使外骨骼在一次起立过程中多次助力.针对这两个问题,本研究提出如下两个改进方案.a.改进一.为减少泛化误差,采用模型集成的方法,训练多个模型共同预测.当多个神经网络预测结果为1,少部分结果为-1时,选用1作为最终的预测结果.具体过程可表示为Censemble(xi)=∑j=1KCj(xi)/K;spredict(xi)=1  (Censemble0),-1  Censemble≤0),式中:K为训练的神经网络数量;Cj(xi)为第i组数据放在第j个神经网络中得到的预测结果;Censemble为K个神经网络预测结果的平均值;spredict为汇总后预测结果.b.改进二.为防止一次起立过程中外骨骼进行多次助力,在每个神经网络分类器后加入一个滑动平均滤波算法,使预测的结果变化过程相对平滑,减少曲线上的突变.具体过程可表示为sfilt(xi+n)=12k+1∑n=-kn=kspredict(xi+n),式中:sfilt为滤波后的结果;k为常数.在本研究的测试过程中,k的值取为1,滑块的长度为3,这样取值可以有效降低预测结果的噪声,同时避免降低预测结果的准确率.3 实验和预测结果3.1 实验设置共计6名健康男性志愿者参与本次起立实验(标记为S1~S6),年龄在23~37岁之间,体重在60~68 kg之间,身高在167~176 cm之间.每名志愿者按3种起立速度(快速、慢速和正常速度)与3种起立姿势(脚掌靠前,脚掌居中和脚掌靠后)进行实验,每组实验重复10次,获得共计540组实验数据.NOKOV光学三维运动捕捉系统以50 Hz的频率获取志愿者起立过程中的各肢体轨迹.通过肌肉骨骼系统仿真软件OpenSim解算运动过程中的动力学信息.3.2 验证方式十折交叉验证:取相同受试者的90%的数据用于训练,其余10%用于验证.具体训练规则如下:S1~S6每位受试者有90组数据,在每种类型的10组数据中随机抽取9组数据,得到9×9=81组数据用于训练,其余9组数据用于测试.每位受试者依次进行10次训练和测试,此时训练数据和测试数据取自同一受试者.受试者交叉验证:使用S1~S5的全部数据训练模型,再使用S6的全部数据进行测试,以此类推,依次进行6次训练和测试.这种训练方式可以模拟训练模型在新的受试者上的测试效果,并且可以比较测试误差和泛化误差的差距,评估模型的泛化能力.3.3 SVM预测结果在支持向量机预测结果中,出错位置相对集中,不会出现突变,因此选择m=2,n=2就足以让外骨骼在受试者起立过程中有且仅助力一次.经过比较,令正则化参数C=2,既保证模型的准确率又使向量机保有一定的泛化能力.模型分别使用不同的核函数进行预测,通过十折交叉验证的方式进行验证,得到的结果如表1和表2所示.在使用外推质心核函数后,起立时刻近20个点的预测准确率由73.3%~74.1%上升到79.9%,时间偏差从96~101 ms降低到70 ms.10.13245/j.hust.240433.T001表1十折交叉验证的准确率核函数S1S2S3S4S5S6平均质心83.785.079.078.479.374.379.9线性75.374.375.871.773.271.073.5高斯75.774.275.972.173.171.073.7Sigmoid75.174.375.271.373.370.973.3多项式76.374.377.272.973.070.974.1%10.13245/j.hust.240433.T002表2十折交叉验证的时间偏差核函数S1S2S3S4S5S6平均质心434862719510270线性81105689012712098高斯79101678913011797Sigmoid851086993127126101多项式77100688912411696ms通过受试者交叉验证的方式进行验证,得到的结果如表3和表4所示.在使用外推质心核函数后,准确率从76.0%~76.4%提升到78.9%,时间偏差从100~103 ms减少到93 ms.10.13245/j.hust.240433.T003表3受试者交叉验证的准确率核函数S1S2S3S4S5S6平均质心77.887.578.082.971.176.478.9线性76.976.783.775.970.672.476.0高斯78.076.383.776.570.372.576.2Sigmoid77.676.784.375.671.872.576.4多项式78.076.283.876.770.372.576.3%10.13245/j.hust.240433.T004表4受试者交叉验证的时间偏差核函数S1S2S3S4S5S6平均质心7371907614210593线性83958491142117102高斯80968990146114102Sigmoid81957894134120100多项式80969090147114103ms3.4 神经网络预测结果神经网络预测结果中错误位置相对分散,因此选择m=3,n=2.经过反复调参,最终确定隐含层的层数为6,激励函数选用Sigmoid函数,最大迭代次数设置为1 000次,期望误差为0.001,学习速率为0.01.模型分别使用二维向量(Xcom,Ycom)和三维向量(Xcom,Ycom,Xe)进行预测,通过十折交叉验证的方式进行验证,得到的结果如表5所示,在使用外推质心进行预测后,预测准确率从81.2%提升到86.2%,起立时刻和助力时刻的时间偏差从87 ms降低到59 ms.10.13245/j.hust.240433.T005表5十折交叉验证的准确率和时间偏差受试者准确率/%时间偏差/ms质心外推质心质心外推质心S186.891.86830S280.490.29952S384.285.56251S482.685.77058S574.983.013380S678.881.49184平均81.286.28759通过受试者交叉验证的方式进行验证,得到的结果如表6所示.预测准确率从77.3%提升到78.4%,时间偏差从104 ms降低到96 ms.10.13245/j.hust.240433.T006表6受试者交叉验证的准确率和时间偏差受试者准确率/%时间偏差/ms质心外推质心质心外推质心S181.977.6101124S277.183.358109S376.578.513075S480.481.46375S567.570.6177142S680.779.59448平均77.378.410496在十折交叉验证过程中选用的训练集和测试集源于同一名受试者,此验证过程中模型性能显著提升,预测时间偏差降低了26~31 ms.在受试者交叉验证过程中,选用的训练集和测试集来自不同受试者,模型性能提升效果不明显,预测时间偏差降低了7~10 ms.这是因为起立动作与受试者起立习惯是强相关,通过受试者本身的数据所训练的模型会优于其他受试者的数据所训练的模型.因此,在实际训练过程中可以增加受试者本身数据的权重,从而获得更好的预测结果.4 结语本研究针对起立意图预测问题,深度探讨了外推质心在意图预测中的作用,分别使用支持向量机和神经网络验证了将外推质心做为模型的输入数据进行预测的可行性.考虑起立时速度影响,采用具有明确物理含义的非线性变化手段,将传统质心轨迹平面变换到动态平衡基准平面,降低了数据分布方差,提高了预测准确率.

使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读