强化学习在机器人装配工艺中的应用

2021-01-20 20:55:38

强化学习(ReinforcementLearning)灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的预期,产生能获得最大利益的习惯性行为。这个方法具有普适性,因此在其他许多领域都有研究,例如博弈论、控制论、运筹学、信息论、模拟优化方法、多主体系统学习、群体智能、统计学以及遗传算法。

强化学习采用的是边获得样例边学习的方式,在获得样例之后更新自己的模型,利用当前的模型来指导下一步的行动,下一步的行动获得reward之后再更新模型,不断迭代重复直到模型收敛。在这个过程中,非常重要的一点在于“在已有当前模型的情况下,如果选择下一步的行动才对完善当前的模型最有利”,这就涉及到了RL中的两个非常重要的概念:探索(exploration)和开发(exploitation),exploration是指选择之前未执行过的actions,从而探索更多的可能性;exploitation是指选择已执行过的actions,从而对已知的actions的模型进行完善

强化学习(RL)提供了一种不同的解决方案,它依靠反复试验学习而不是精确的建模来构造有效的控制器。具有近似表达功能的强化学习(即深度强化学习)还可以自动处理图像等高维输入。然而,强化学习并没有在工业领域中得到广泛应用,主要是因为遇到几个障碍。采样效率低下是严重限制强化学习在机器人操作中应用的主要原因之一,即使最好的一些强化学习算法也可能不切实际。有多个方面导致此问题,首先,许多算法尝试从头开始学习执行任务,因此,它们需要大量数据来学习;其次,算法在利用当前数据中的有用信息方面仍然不够好;一些on-policy算法甚至在每个更新步骤都需要新数据;最后,机器人技术中的数据收集非常耗时。另一个常常被低估的障碍是指定目标,强化学习中设定需要优化的奖励函数,但通常会对其进行精心设计以使系统学习。

文章《Deep Reinforcement Learning for Industrial Insertion Tasks with Visual Inputs and Natural Rewards》中,首先考虑用一种端到端方法从图像中学习策略,其中图像既是状态空间又是指定目标。通过图像来指定目标,用最少的人工来指定目标。使用图像作为状态空间还可以使机器人操作直接利用视觉作为反馈,从而为传感器和执行器噪声提供一定的鲁棒性。在这里考虑的许多电子组装任务中,可以直接检测电子设备是否正常工作,并将该信号用作奖励。作者还将残余强化学习方法扩展到基于视觉的操作中。

首先,机器人必须非常精确地将插头和插座对齐。小到±1mm的误差都可能导致持续的故障。图像序列如图1所示,7*度的Sawyer机器人,动作信号提供笛卡尔坐标下末端执行器的相对运动。机器人的基本控制框图如图3所示。

强化学习在机器人装配工艺中的应用

 

图1 作者直接在现实场景中训练策略。左图:显示了从已学习策略中成功完成每个连接器插入任务的过程。右图:机器人操作的完整视图。

强化学习在机器人装配工艺中的应用

 

图2 这三个连接器插入任务的特写图显示了接触点的情况,这些任务要求在没有视觉反馈的情况下达到亚毫米级的精度。

强化学习在机器人装配工艺中的应用

 

图3:机器人级联控制方案的图示。以最10 Hz的频率计算ut动作,通过逆解求得所需的关节角度,关节控制采用具有反饱和PID控制的关节空间阻抗控制器,控制频率为1000 Hz。

 

作者选用了3种连接器进行实验,分别是USB连接器,D-Sub连接器和防水Model-E连接器。所有实验用例都来自于IROS 2017机器人抓取和操纵竞赛,以衡量机器人的组装性能。下面来分析一下3种连接器:

(1) USB:被广泛应用的一种连接器,由于随着插拔次数的增加,USB会变光滑,从而更加容易插入,作者会定期更换新的USB口,在三种连接器中,USB是最简单的。

(2) D-Sub:插入D-Sub需要对齐好几个引脚,所以会比USB的插入要求更高,也需要更多向下的力。

(3) Model-E:这种连接器是三个当中最难的,因为它需要对齐好几个边缘和槽,也需要较大的向下的力。

 

作者采用3种奖励函数来评估不同算法的效果:

(1) 基于视觉图像的方法,采用32×32的灰度图像,既作为反馈状态,又作为奖励函数中的目标图像,如图4所示。奖励函数是当前图像与给定目标图像之间的像素级距离。虽然图片像素较低,但也足以分辨出插入过程中不同阶段的差异,奖励函数中对应成功的插入和失败的插入还是有很明显的差距。

(2) 稀疏(Sparse)奖励,只有两种结果,可以通过检测连接器是否成功上电来判断是否插入成功,作者只对USB连接器采用稀疏奖励进行实验。

强化学习在机器人装配工艺中的应用

 

(3) 稠密(Dense)奖励。采用当前位置与目标位置之间的距离作为奖励函数:

强化学习在机器人装配工艺中的应用

 

强化学习在机器人装配工艺中的应用

 

强化学习在机器人装配工艺中的应用

 

图4:Model-E连接器的成功插入。基于图像的强化算法采用32×32的灰度图像。

 

对于具有连续动作的控制,很难在Bellman方程中计算所需的最大值。诸如深度确定性策略梯度(DDPG)之类的连续控制算法还可以学习近似选择最大化动作的策略。作者考虑两种相关的强化学习算法,因为它们采样效率高,稳定并且需要很少的超参数调整,因此它们很适合于现实世界的学习。

(1) Twin Delayed DeepDeterministic Policy Gradients (TD3):与DDPG一样,TD3优化了确定性策略,但使用两个Q函数逼近器来减少价值高估并延迟策略更新以稳定训练。

(2) Soft Actor Critic (SAC):是基于带有随机策略的最大熵强化学习框架的基于策略价值的强化学习方法。

作者还采用residual RL的方法将先验信息注入RL算法中,而不是从头开始进行随机探索,以加速训练的过程,并减少搜索过程中的不安全行为。residual RL中,行动将固定策略和参数化策略结合起来:

强化学习在机器人装配工艺中的应用

 

其中固定策略采用一个简单的P控制器:

强化学习在机器人装配工艺中的应用

 

参数化策略可以采用任何一种强化学习的算法获得,residual RL的框架如下:

强化学习在机器人装配工艺中的应用

 

结合先验信息的方法是RL with learning from demonstrations,使用专家策略中的示范来指导RL期间的探索。用操纵杆控制器示范如何装配并收集相关数据,然后在执行RL时添加了行为克隆损失,并使得策略逼近于示范。

测试对目标扰动的鲁棒性,将目标位置在x和y方向上人为加入扰动±1mm,例如扰动的目标位于边长为2mm的正方形的边缘和角落,并以准确的目标位置为中心,一共8个受干扰的目标位置,在这些位置上评估经过训练的策略。测量25个策略执行的成功率,在此过程中,对每个受干扰的目标位置进行至少3次采样。

强化学习在机器人装配工艺中的应用

 

图5:在基于视觉图像的训练中得到的最终平均距离。对RL,residual RL和RL with learning from demonstrations进行对比。只有residual RL才能处理高维输入,并在给定的训练量后都能解决所有任务。其他方法学会了向下移动,但是经常卡在插入的开始,并且无法从失败的尝试中恢复。这个实验表明采用图像作为指定目标是可行的。

 

表1:每种方法的训练结束后25个策略执行中的平均成功率。对于含有噪声(Noisy)的目标,将以目标位置添加±1mm的扰动。residual RL(尤其是SAC)在所有三个连接器上往往是性能最好的方法。一旦加入扰动,P控制器的成功率大打折扣,相比之下residual RL依然可以保持较高的插入成功率。对于Model-E连接器,只有residual RL可以在给定的训练时间内解决任务。SAC对扰动的鲁棒性要比TD3好一些。

强化学习在机器人装配工艺中的应用

 

表2:USB插入任务的平均成功率。residual RL和RL with learning from demonstrations始终可以解决任务。此外,residual RL在±1mm的噪声下仍保持稳定。

强化学习在机器人装配工艺中的应用

 

强化学习在机器人装配工艺中的应用

 

图6:基于稀疏奖励的USB插入任务训练的学习曲线。纵坐标为成功率,越高表示越好。residual RL和RL with learningfrom demonstrations都可以相对较快地解决任务,而RL则需要花大约两倍的时间才能以相同的性能解决任务。这个实验结果表明可以从稀疏的奖励中学习精准的插拔任务,而稀疏的奖励通常比密集的奖励更容易获得。

强化学习在机器人装配工艺中的应用

 

图7:在基于稠密奖励的训练过程中得到的最终平均距离图。最终距离大于0.01m表示插入失败。在这里,Residual RL方法的性能明显优于纯RL,并且通常能够在训练的早期探索过程中解决任务。

上一篇:文献记录(part41)--Residual multi-task learning for facial landmark localization and expression ...


下一篇:OpenGL-实战篇--Breakout--CollisionDetection--49