Hello,大家好!
Rose小哥今天介绍一篇利用大脑信号来控制机器人的人机交互方式。类似的文章可以参考《脑机头条 第38期| 能玩"剪刀石头布"的脑机!密歇根大学开发由大脑意识精密控制的假肢》
简单介绍脑信号控制机器人相关的知识
利用大脑信号来控制机器人是人机交互中的一个非常有意思和有意义的研究。尽管根据目前的技术,捕捉和识别这些信号是一个相当大的挑战,但最近的研究表明,错误相关电位(ErrP)信号是由大脑在观察或犯错时产生的。如果即使是在有限的情况下也可以利用这个信号来促进人-机器人的控制,它将使人-机器人协作的新应用成为可能。例如,人类可以远程监控工厂里的机器人,当机器人犯了错误时,不需要输入命令或按下按钮,就可以立即“停止”。
图1
可靠地检测这种与错误相关的电位,可以通过与协作机器人交互或观察过程中在大脑中自然产生的信号来实现通信。这可能会减轻普通脑机接口(BCI)系统经常需要的大量用户培训、额外的认知负担或持续的视觉刺激。
由于使用脑电图(EEG)从受试者的大脑活动中快速提取这些信号的固有困难,因此涉及与错误相关的电位的研究通常是在受控的环境中进行,并用于模拟或开环任务。然而,机器人应用需要在真实环境中的闭环场景。因此,研究人员在该篇文献中探讨了EEG测量的ErrP信号在实时闭环机器人任务中的适用性。
波士顿大学和MIT研究人员开发了一个基于在线识别与错误相关电位的人-机器人协作的反馈系统,值得一提的是,一个名为RethinkRobotics Baxter的机器人在被人类观察的同时进行对象选择。对操作员的脑电图信号进行实时采集和解码;如果检测到ErrP信号,机器人会立即纠正其轨迹。图1描述了排序任务期间的系统操作,这是对象选择任务的简单扩展。
这些实验得到的一个重要结果是观察和分析了由于人的积极参与而产生的在线闭环实验中的交互误差相关电位,即次级误差(secondary ErrP)。当机器人不能很好地服从人类的反馈时,脑电图信号的实时错误分类就会自然地产生。这些次级错误通常比与初始错误相关的潜在错误(初级错误)更容易分类。因此,该信号可以改善系统性能,并极大地帮助基于EEG的机器人任务闭环控制器的开发;该论文对这一目标进行了初步的离线分析。
使用ErrP通信的人机交互
人类可以使用ErrP信号通过多种方式与机器人进行交互。控制回路可以主动地将人纳入控制回路中或排除在控制回路之外,并且可以实时或在实验完成后执行计算。具体地说:
闭环意味着机器人和人类在整个任务过程中直接相互影响;一个人的行为会影响另一个人。例如,EEG分类器检测到一个ErrP并将一个轨迹较正信息发送给Baxter。这种调节被人立即观察到,从而影响他们的行为和脑电图信号,进而完成闭环。
开环意味着机器人无需人工反馈即可执行任务。可以由人类对机器人的观察和脑电图数据的采集,但无法对其进行实时解码实现了对机器人的实时控制。人的角色可能看起来类似于闭环场景,但是缺乏协作极大地影响了受试者的参与。
在线性能意味着脑电信号分类系统是实时工作的,这是闭环反馈所必需的。要做到这一点,系统必须在不到一秒的时间内获取EEG数据,然后在几毫秒内做出分类决策;较长的延迟会降低闭环反馈的有效性。
离线性能是通过开环或闭环实验后,对预先记录的脑电图数据运行EEG分类系统获得的。离线分析不受计算时间的限制,一般通过优化分类管道来达到更好的性能。
这项工作的重点是开发一个在线闭环系统。在执行任务的过程中,会获取短暂窗口的脑电图数据,并在几百毫秒内进行解码,为机器人提供即时反馈。12名受试者参与了实验,其中只有1人以前使用过脑电图系统,而且没有人之前接受过这项任务的训练。其中一名受试者处于冥想状态,为保持一致性,本研究排除了该受试者的数据。在线会话中使用的分类器在单个实验的基础上进行了训练,只使用了50次初始试验。离线分析,利用所有可用数据优化分类参数;随着计算和硬件的进步,最终可以在线实现类似的结果。
实验设计
研究人员在这项研究中设计了一种实验范式,通过人被动地观察机器人在执行二项选择到达任务时是否做出正确或错误的决策,然后使用产生的EEG信号实时影响机器人。一个典型的记录会话持续约1.5小时,包括准备脑电图帽,并分为4个blocks(对于闭环会话[closed-loop sessions])或5个blocks(对于开环会话[open-loop sessions])。
每个blocks包含50个试验,历时9分钟。研究人员在麻省理工学院分布式机器人实验室实施了该范例。
下图说明了构成范例的事件序列。在实验过程中,一名戴着EEG帽的受试者坐在距Baxter 50 cm处,在解码器搜索ErrP信号时判断Baxter的对象选择是否正确。在每次试验开始时,受试者都注视着位于Baxter手臂下方和两个闪烁的LED中心的固定点。然后,两个LED之一指示所需的目标信号(左或右)。之后Baxter随机选择一个对正确选择有50/50或70/30偏差的目标(分别用于开环和闭环实验),并执行两阶段到达动作。第一阶段是横向移动,该运动传达了Baxter的预定目标,并释放了一个按钮开关以启动EEG分类系统。受试者会从精神上判断该选择是否正确,然后系统会根据是否检测到ErrP来通知Baxter继续朝预期目标前进或切换到其他目标。然后,到达运动的第二阶段是朝着对象的向前到达。
a
如果发生错误分类,则可能会导致二次错误,如下图b所示,因为机器人没有听从人类的反馈。 此第二错误可能会在将来用于引起另一个轨迹更改,从而最终选择正确的目标。
b
研究人员设计了机器人控制和信号采集系统,该系统包括一个主要的实验控制器,Baxter机器人以及一个EEG采集和分类系统。Arduino在控制器和EEG系统之间中继消息。机械接触开关检测手臂运动的开始。如下图所示。
分类管道和反馈控制回路如下图所示。机器人通过移动手臂来指示对象选择来触发管道;这个时刻是反馈开始的时间。然后采集脑电图数据窗口,经过各个预处理和分类阶段。最终结果是确定是否存在ErrP信号,从而确定Baxter是否犯了错误。所实现的在线系统使用该管道检测针对Baxter初始移动的主要错误;离线分析还表明,可以将类似的管道应用于次要错误来提高性能。
优化后的管道实现了ErrP信号的在线解码,从而实现了闭环机器人控制。使用50个闭环试验的单个块来训练分类器,此后,受试者无需脑电图经验即可开始控制Baxter。
下面介绍一下闭环在线分类的步骤,主要分为5个步骤:
1)预处理:
从反馈起始时间开始,使用1-80Hz通带的4阶Butterworth零相位滤波器对所有48个EEG通道的800 ms缓冲进行滤波。然后从每个通道中减去所有通道的平均值,以消除所有电极共有的噪声。由于错误相关的活动与中央皮层区域相关,因此仅通过选择9个中央电极通道(FC1、FCz、FC2、C1、Cz、C2、CP1、CPz、CP2)来实现数据降维。这个通道选择过程也有助于移除可能被眨眼和肌肉伪影污染的电极。
2)特征提取:
使用两个不同的管道从减少的9个通道中提取特征。协方差和XDAWN过滤器:计算所有正确(均值正确)和所有错误(均值错误)训练试验的均值,然后使用5阶XDAWN过滤器进行空间过滤(这个顺序提供了离线分析的最佳性能)。两个过滤后的平均试验随后被添加到每个单独的训练或测试试验中,以创建增强试验。通过切线空间投影计算并向量化每个扩展试验的协方差,得到190个特征。
相关性:在选择的9个电极通道与训练得到的平均校正和平均误差试验轨迹之间,按每个通道计算相关指数。对于每个通道和试验,计算均值不正确和均值正确相关指数之间的差值,每个试验产生9个特征。使用所有199个特征的向量来完成分类。在离线分析中评估不同的特征选择方法(如Fisher评分、单因素方差分析和PCA),但未发现显著的性能提高。
3)分类器:
在离线分析时将分类模型训练好,在线分类时使用这个训练好的分类器输出线性回归值。
4)阈值设置:
阈值:期望的输出是ErrP存在的二进制指示,因此为回归值选择了阈值。
5)决策:
一旦回归值达到阈值,分类器就输出最终的二元决策。0表示没有ErrP,机器人应该保持初始选择,1表示有ErrP,机器人应该切换目标。
结果:初级和次级错误
数据分析表明,在闭环和开环两种情况下,所选机器人任务都存在ErrP信号。使用在线性能和离线增强来评估分类管道。
HRI任务存在错误相关电位
上图为闭环实验中检测到的典型ErrP信号。出现错误时(红色),没有错误时(绿色),现实FCz电极轨迹的均值。暗黑色迹线是它们之间的区别,在反馈开始后约250ms出现一个负峰,与理论[8]一致,随后出现一个正峰。
下图显示了其中一个受试者的主要ErrP的详细时间和空间演变,当Baxter第一次移动以指示对象选择时被锁定到反馈起点。上方的图显示了48个脑电图电极上的信号。底部的图是头皮上信号位置的延时,由电极位置之间的插值创建。信号集中在头部的中央,这与ErrP理论[8]相一致。
闭环ErrP:次要错误Closed-LoopErrP: The Secondary Error
一个重要的结果是,允许人类通过他们的大脑活动实时地影响机器人,会导致secondary ErrPs。这些问题是由于系统分类错误而引起的,也就是Baxter没有正确地解释人类的反馈。如果系统未能检测到一个ErrP时,就会发生如下情况—参见图3b中的案例C-I和I-I。由于人是积极参与,并且意识到机器人应该服从他们的反馈,所以次级ErrP通常比初级ErrP更强,更容易检测。
下图展示了secondary ErrP的存在,其格式类似于初始ErrP的格式。
对分类精度的影响:
下图显示了初始错误和次级错误之间的明显差异:平均次级错误(黑色)的幅度大约是初始错误的两倍,次级错误的形状在受试者之间更加一致。这些差异可以促进可靠的分类,并获得更好的总体性能和泛化。
性能
下面介绍在线闭环分类性能,以及离线分析开环和闭环场景下的主要和次要错误,以评估系统在选定的协作任务中的性能。
在线闭环:实时分类来自人体观察者的脑电图信号,并将其传递给机器人。如果检测到错误,控制器命令Baxter在完成reach之前切换目标。在采集到800 ms脑电图数据后,使用预先训练好的分类器在10-30 ms内进行分类决策。
离线闭环:利用整个在线闭环会话(4个blocks,每个blocks 9分钟,平均190次试验)的脑电图数据对分类器进行训练。对特征和阈值进行优化,通过10次交叉验证的10次迭代对分类器进行测试。
离线开环:利用开环会话(5个blocks,每个blocks 9分钟)的脑电图数据对分类器进行训练;人是一个被动的观察者,Baxter没有收到实时反馈。分类器通过10次交叉验证的10次迭代在单次试验的基础上进行测试。
离线次级错误(Offline secondary error):在线闭环任务期间预先收集EEG数据。所有超过5个9分钟blocks的脑电图信号都被用来训练分类器,以识别第一次错误分类后出现的第二次错误。
结论
研究人员通过对错误相关电位信号的检测,开发了一种在线闭环EEG系统。即使对于以前没有在任务和EEG系统上受过训练的一般人群,也可以实现直观的人机交互。
离线分析还表明,当人类注意到机器人错误地解释了他们的反馈时,存在一个二级错误。这种信号通常比原始错误更容易分类,因此可以用来提高性能精度。在未来,这个信号可以被合并到在线场景中,从而提高闭环性能。