前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Berkeley用TMD策略制定计划,实现骑行任务

Berkeley用TMD策略制定计划,实现骑行任务

作者头像
AiTechYun
发布2018-07-27 10:45:14
4380
发布2018-07-27 10:45:14
举报
文章被收录于专栏:ATYUN订阅号ATYUN订阅号

AiTechYun

编辑:chux

如果你打算从UC Berkeley骑行到金门大桥(Golden Gate Bridge),这样骑行20英里也不错,但问题是,你从没骑过自行车!更棘手的是,你初来乍到,对这里还不熟,手里只有一份OL的时尚地图,那么你要怎么做?

首先来解决如何学会骑自行车的问题。其中一个方法是进行大量研究和计划,阅读关于骑行的书籍,研究物理学和解剖学,探索每次动作时你需要做出的不同的肌肉运动,等等。这种方法看似可行,然而骑过自行车的人都知道这种方法只是纸上谈兵。只有一种方法可行,那就是试错。像骑行这样的任务太过复杂,空想计划是不可行的。

一旦你学会了骑行,那么要怎样到达目的地呢?你可以再次利用试错法,随机进行转弯看是否能抵达Golden Gate Bridge,然而这一方法需要花费太多时间。对这样的问题来说,计划则速度更快,不需太多的实际经验和试错。用强化学习的术语来表达就是sample-efficient。

通过试错法学习技巧

其他情况,事先计划好会更好

这个想法虽然简单,但强调了人类智能的一些重要方面。对于某些任务,我们使用试错法,而对于其他任务,我们使用的是计划法。在强化学习(RL)中也出现了类似的现象。用RL的术语来说,就是实证结果表明,一些任务更适合model-free(试错)方法,而另一些则更适合model-based(计划)方法。

然而,用骑行进行类比也强调了这两个系统并不是完全独立的。学习骑行就是试错,这种说法太过夸张。事实上,当你通过试错法来学习骑车时,你也会采取一些计划。也许最初的计划是“不要摔倒”。当你更熟练之后,你会设立更高的目标,比如“向前骑两米不摔倒”。最终,你精通了骑行技巧,然后开始设定抽象的计划(骑到这条路的尽头),这样你只需要不断计划,而无需再拘泥于骑行的细节。这一过程便是从model-free(试错)策略到model-based(计划)策略的逐步过渡。如果我们通过开发人工智能算法,特别是RL算法,来模拟这种行为,那么可能会产生一种算法,既能通过早期使用试误法较好地完成任务,又能在之后转换到计划法来实现更抽象的目标,体现sample efficient。

这篇文章会用到temporal difference model(TDM),是一种RL算法,可以将model-free平稳过渡到model-based RL。在描述TDM之前,我们先来看看典型的基于模型的RL算法是如何工作的。

model-based RL

在强化学习中,存在许多状态空间S和动作空间A。如果时间是t,那么我们所处的状态和采取的动作分别用st∈S和at∈A来表示,根据动态模型f:S×A↦S,我们转换到新的状态就可表示为st+1=f(st,at) 。目标是最大化已有状态总结的回报:∑T−1t=1r(st,a,st+1)。model-based RL算法假设你已得到得到(或学会)动力模型f。根据这一模型,可用各种model-based算法。在这篇文章中,我们执行以下的optimization方法,以选择一系列动作和状态,使回报最大化。

optimization方法选择一系列动作和状态,使回报最大化,同时确保轨迹是可行的。在这里,可行的意思是状态与动作直到下一个状态的转化都有效。例如下面的图片,如果你从状态st和动作at开始,只有最上一列的st+1会使转化可行。

如果你忽略掉物理学,计划骑行到Golden Gate Bridge会更简单些。然而,model-based最优化的问题约束确保仅有的轨迹(如最上一列)可被输出。下面两列轨迹可能会得到高回报,不过都是不可行的。

在我们的自行车问题中,最优化可能会使从Berkeley(右上)到Golden Gate Bridge(中左)的骑行计划看起来如下图:

Optimization问题的计划(状态和动作)输出实例

虽然理念很好,但这个计划并不现实。model-based方法利用模型f(s,a)预测接下来的每一个状态。在机器人学中,时间步长通常对应十分之一秒或百分之一秒。所以一个更现实的计划可能如下图所示:

一个更为现实的计划

如果思考一下我们在日常生活中是如何计划的,就会意识到我们会用更多时间计划抽象术语。我们会制定长期计划如“我要骑到这条路的尽头”,而不是计划在下个十分之一秒具体骑到哪个位置。此外,一旦学会如何骑行,我们就只会做这些抽象的计划。正如上文所讨论的那样,我们需要一些方法,用来(1)通过试错法开展学习,(2)提供一种机制,逐步提高我们用于计划的抽象级别。为了实现这些,我们引进了temporal difference模型。

TDM

我们将TDM写作Q(s,a,sg,τ)*,这是一个函数,我们所处的状态和采取给定状态为st∈S,动作为at∈A,目标状态为sg∈S,以此预测智能体如何在τ 长度的时间步长内完成目标。也就是说用TDM来回答“如果我想在30分钟内骑行到San Francisco,我能距离终点多远?”对于机器人学来说,一个测量接近程度的方法就是Euclidean distance。

*我们称它为temporal difference model,因为我们用时间差异学习来训练Q,并使用Q作为模型。

经过固定的时间后,TDM预测你离目的地的距离(Golden Gate Bridge)。骑行30分钟,也许你只能到达上图中灰色自行车的位置。在这种情况下,灰线代表TDM应该预测的距离。

对于那些熟悉强化学习的人来说,在finite-horizon MDP中,TDM可以被视为一个目标已定的Q函数。因为TDM也是Q函数,我们可以用model-free(试错法)算法训练它。我们用deep deterministic policy gradient(DDPG)来训练TDM,并对目标和时间范围进行追溯并重新标记,以提高我们学习算法的sample efficiency。理论上,任何Q-learning算法都可用于训练TDM,不过我们发现这种最有效率。

用TDM制定计划

一旦我们训练了TDM,那我们如何将它用于制定计划?我们可以根据以下的optimization来制定计划:

这类似于model-based的构想。选择一系列使回报最大化且可行的动作和状态。关键差异在于我们只能每k个时间步长计划一次,而不是每个时间步长都计划一次。Q(st,at,st+K,K)=0中存在的约束强制了轨道的可行性。视觉上来说并不是明确计划K步以及如下动作:

而是直接计划K个时间步长,如下图:

随着K的增加,我们逐渐得到越来越多暂时的抽象计划。在K时间步长中,我们用model-free approach采取行动,从而使model-free策略将如何达到终点的细节抽象化。对于骑行问题以及足够大的K值,通过optimization可以得到如图所示的计划:

model-free计划者可用于选择暂时的抽象目标。可以用model-free算法来实现这些目标。

需要注意的是,这一构想只能每K步优化一次回报。然而,许多任务只考虑某一些状态,比如最终状态(如抵达Golden Gate Bridge),而这一点正适用于各种有趣的任务。

相关研究

在我们之前已有人对model-based和model-free之间的联系进行了研究。Parr ‘08和Boyan ‘99与此研究密切相关,虽然重点只是tabular函数和linear函数approximators。训练目标条件Q函数的想法,是从关于智能体导航和Atari游戏的研究——Sutton ‘11和Schaul ‘15中提取的。最近,我们使用的重新标记的方法是受到了Andrychowicz ‘17研究的启发。

实验

我们用5个模拟的连续控制任务和一个真实的机器人任务测试了TDM。模拟任务是训练机械手臂将圆柱体推到目标位置。下面的示例展示了最终采用的TDM策略以及相关的学习曲线:

上图:任务的TDM策略 下图:学习曲线 蓝线代表TDM(线的位置越低越好)

在学习曲线中,我们画出到目标的最终的距离以及环境样本的数量(越低越好)。我们的模拟将机器人控制在20赫兹,这意味着在现实世界中,50秒对应1千步。这种环境的动态相对容易学习,这意味着model-based的方法应该更胜一筹。正如预期,model-based方法(紫色的线)学习速度更快,大约3千步或者说25分钟,而且表现也很好。TDM方法(蓝色曲线)学习速度也很快,大约2千步,17分钟。model-free DDPG(没有TDM参与)基线最终解决了问题,但是需要更多的训练样本。TDM方法学习如此之快的一个原因是,其效果相当于套用了model-based方法。

当涉及更需要大量动力的移动任务时,model-free方法的优势就明显多了。其中一项移动任务是训练一个四足机器人,让它移动到一个特定的位置。下图展示了TDM策略与其学习曲线。

上图:移动任务的TDM策略 下图:学习曲线 蓝线代表TDM(线的位置越低越好)

就像我们使用试错法而不是计划去学习骑自行车,我们期望model-free方法在移动任务上比model-based方法表现更好。这正是我们在学习曲线中看到的:model-based方法表现更好。model-free DDPG方法学习速度更慢,但是最终还是胜过了model-based方法。TDM则速度又快表现又好。

未来发展方向

TDM为model-free到model-based控制的转换,提供了形式主义和实用算法。然而,未来还有很多研究要做。比如,推导假定环境和政策是确定的。事实上,大多数环境都是随机的。即使它们是确定的,在现实中还是有必须使用随机政策的理由。TDM扩展到这一设定有助于将TDM迁移到更实际的环境中。另一个想法是将TDM与我们在文中使用的model-based planning optimization算法结合起来。最后,我们很期待将TDM与现实中的机器人结合,应用到更多有挑战性的任务中,比如移动任务,操纵任务,当然也包括骑行到Golden Gate Bridge任务。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-04-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ATYUN订阅号 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • model-based RL
  • TDM
  • 用TDM制定计划
  • 相关研究
  • 实验
  • 未来发展方向
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档