IT课程

IT技术专业学习平台
IT人才专业服务提供商

 

VUE考试注册预约电话:010-82608710

全国热线:400-004-8626

人工智能强化学习03|实例:无地图探索

首页    技术博文    强化学习    人工智能强化学习03|实例:无地图探索

前面讲了那么多用不到的,这一期我们来分享一份干货,这是一篇讲解移动机器人面对陌生环境如何去探索的论文移动机器人在面对路无地图陌生环境时的探索行为,一直以来都是一个比较难解决的问题这个议题要求机器人在陌生环境中自行寻路寻找目标对象。强化学习(RL近年来成为解决这一难题的突破口而这个实验则使用了深度强化学习(DRL)技术,这种技术比普通强化学习要更加智能。通过实验,研究人员发现DRL中的内在动机因素解决难题的关键关于RLDRLYESLAB公会将有专门的课程来进行讲解。

移动机器人

在移动机器人开发中,现在比较流行的做法就是将导航策略的配置空间与具体运动空间(包含坐标、位移、方向等数据)映射起来,让机器人AI学习并理解“什么样的地方应该怎样到达”目前仍被大量使用的传统技术称为SLAM该技术适用于给定地图的前提下完成物体定位与路径规划。所以使用强化学习RL进行机器人导航,可以理解为一种动态学习任务,理论上能够根据即时数据与少量的历史数据,评估下一个决策点的行为这种学习方法跟人类的探索性尝试行为是类似的,它可能会让机器人走很多错误的路,但最终会产生更好的效果,就如同我们人类一样,不经历风雨,怎能见彩虹

通常DRL数据来源:目标导航策略,单独RL从导航策略中学习到的可用特征,一些辅助任务等。

img1

实验环境

本文中的实验首先要求机器人对需要探索的环境是完全陌生的,但对所寻找的物体是熟悉的,为了减少让机器人认识指定物体所花费的时间和避免误认物体导致实验失败,寻找物体这个子任务需要基于简单可实现的原则,例如使用可见光来识别物体,或干脆使用WIFI信号,场景设计上也需要注意避免设计过长的走廊或者视线死角增加额外的难度。

img2

总结来讲本文中的实验环境中包含以下前提条件

  • 激光识别

  • 恰当的机器人前进速度

  • 合适的目标位置

  • 使用异步DRL

  • 策略网络输出

AI会对自己所做行为带来影响进行评估,评估结果用来衡量在全新状态下的决策,这样的学习模型称为“内在动机模型(ICM)”。ICM应用在每个单独的RL过程,其评估结果会计算在奖励机制中,也可以理解为,产生的误差会参与到奖励中来。例如AI选择了一个会在下一步撞墙的策略,这时候奖励值应该为负(惩罚)。基本的RL算法会记录在这个状态(state)下的奖励值(reward),这样就可以判断这样的决策是否正确、适用于怎样的场景。每个DRL需要完成的任务称为一个子任务,DRL通过管理不同的RL智能体进程来完成不同的子任务,例如论文中就谈及了研究团队使用一个RL智能体进程来学习已经生成的导航路线中是否存在过长的走廊和视线死角。

 


基本概念与算法详解

目标:让机器人能到达目标g,但不会碰到任何障碍。

马尔可夫决策过程(MDP):其实就是RL算法的主要部分,本文使用t表示时间戳,每个t时都会有一个 表示当前状态,这个  包含激光射频读取 以及机器人与目标的相对姿势 ,激活信息主要为了测量距离,而姿势信息主要为了测量方向(如果是3D的,姿势一般会分为仰角、倾斜、方向三个指标)在这个状态下机器人会采取行动  ,并收到奖励  ,然后进入下个t的状态 ,最后说明目标物体的位置坐标为g。

动量(采取的动作): 任何动作都会消耗动量。

奖励函数:奖励函数在RL与DRL中都是非常重要的,直接关系到是否会得到想要的训练结果,本文将奖励分为外在奖励和内在奖励来分别计算。

外在奖励(由外部因素引起的奖励,主要包含一些外部事件如“已经到达目标”、“发生碰撞”等获得的正负奖励)        

 其中下标t均代表时间上标e表示External即标明这个奖励是由外部因素引起的,上标p表示此参数与位置position相关,上标表示此参数与朝向(orientation)相关。是可调超参用于平衡位置和朝向的权重 是需要设立范围的主奖励函数:

img3

这里的是指时间t 时候的姿势与位置,为什么总会提到姿势与位置呢?这里需要插入一张图说明一下,因为对于实验环境,我们有世界坐标,也有以机器人为中心的机器人坐标系,那么对于实验过程我们会希望所有的位置信息都参照世界坐标,而机器人坐标可以明确说明机器人的朝向,最终我们会获得一个有关机器人在世界坐标中位置和机器人朝向的矩阵,我们暂时称为“机器人矩阵”。而这个其实就是说,我们可以设定t时已经到达的奖励值为100,而被障碍拦截的奖励值为-100;其他情况下,比较t-1和t时的机器人矩阵离目标的二阶范数,因为让机器人转身也需要动量,移动位置也需要动量,所以其实这里就是在计算机器人到目标还差多少动量。

img4

接下来说明其他两个奖励:

img5
第一个就是计算机器人在t-1 t 时间变化前后动了没,如果没动则给予的奖励,其实这里应该是惩罚,即这个奖励会用变为负值,机器人没有动说明是发生了一些事情,即到达目标了,或者被拦截了; 第二个奖励值使用到了atan2三角函数,有兴趣可以自己看看这个函数,在机器人开发的几何学中会经常用到,目的就是为了计算直线距离,所以第二个奖励是跟直线距离相关的,即激励机器人不断缩小直线距离,接近目标。

内在奖励: 这是论文的主要闪光点,内在奖励是由好奇心驱动的,让我们看看如何用数学去定义好奇心。

首先讲解一下ICM模型,我们通过上面的部分了解到随着时间推移,会有 S和 St+1,这表示机器人在不同时间的状态,这种状态包含了机器人对环境探索与目标搜寻的各种结果数据,设置一个特征提取层(编码层)命名为 ф ,通常使用神经网络建立的编码器就很好用,将 S和 St+1 送进去提取特征,经过编码后得到 ф фt+1 两种特征值。

接下来的过程会比较魔幻一些,设置一个解码器,从 фt 和 фt+1 中预测可能会在t时做出的行动 ât,此时系统会自动将预测行动变为实际行动 at 。然后使用 atфt 用一个解码器的前传过程预测出

img6

我们拥有了根据动作推测出的特征  ,也拥有根据实际状态解码出的特征  фt+1 就可以算个减法来得到内在奖励值 Ri

img7
 

当然这里我们略过一些算法细节,包含编码器和解码器的细节,他们实际上是由一种actor-critic(A3C)模型来描述的,这个暂且不进行展开,会出现在RL的讲解文章中。静下心来看看上面的这种机制,就是让AI自己学习两个状态的特征区别,用特征提取与特征表述这两个过程来描述内在动机的概念,即“机器人通过自己的思考,感觉两个时间点的状态有什么区别”,最后“使用这种区别来激发自己的兴趣,更好的为下一步做决策,奖励正确的认知,惩罚错误的认知”。这也是迁移学习的概念,用学习到的知识来适应新的环境,并不断学习。

异步DRL:两种奖励机制就是两个RL过程,我们需要管理者两个过程来达到DRL的效果:

img8

具体优化过程就不描述了,属于DRL本身的知识。主要就是通过两个网络 θπ 和 θυ,策略网络与估值网络θυ,梯度优化这两个网络的输出,目标就是最大化奖励 R。

img9

这里结合了一些其他因素,将奖励更加合理的包装为G。

img10


训练要点

1、实验是在仿真2D环境下完成,机器人装备一个激光感知器,通过收发激光信号来感知周围环境并产生数据;

2、机器人初始姿势p0与目标寻觅物位置g均随机产生,但需确保机器人与目标之间至少存在一条无障碍可达路径;

3、无论机器人已经成功寻觅到目标,或者机器人完全被障碍阻拦,还是已经在达到了7000次最大训练迭代与400次最大测试迭代仍没有成功,实验都会终止;

4、超参详见原文第3页;

5、DRL使用两个卷积网络,结构参数详见原文第3页;

6、下面两个图反映了本文实验的机器人获得奖励的情况(实际上是惩罚了,作者将奖励控制在低于10的样子)和每一次训练的思考量:

img11
img12


结果说明

本文一共使用了4张地图,用第1张做训练,其他3张用来做测试。

img13

看看在第1张地图的训练结果,这里可以看到有两行结果,是作者采用了不同的策略,第1行是without LSTM,第2行是with LSTM,LSTM是一种长短期记忆机制,即为每个神经元节点设定一些遗忘性能,将不重要的、没有反复出现的遗忘掉,保留近期频发最显著的特征,LSTM会在HCNA-AI课程与公会后期讲解。

img14

接下来看看在机器人在另外3个地图的测试效果,Entropy是被设计为一个可选功能,即对误差值计算平均熵,可以有效减少噪音干扰。

img15

总结一下,本文意图使用DRL去淘汰SLAM技术,相信这两种技术会并存一段时间,不过基于强化学习的应用在近几年确实突飞猛涨,很多电商都在使用强化学习做一些更好的业务模式,在机器人开发中,只要是跟人工智能相关的,例如寻路导航、精准抓取、视觉辨认等均可以用深度强化学习进行实验,由于机器人本身的工作场景会经常获取新数据,所以强化学习就成为了目前最具风尚的解决方案,期待更多强化学习的实践。

img16
 

原文链接(https://arxiv.org/abs/1804.00456)

2018年7月11日 18:30
浏览量:0
收藏
本网站由阿里云提供云计算及安全服务 Powered by CloudDream