首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >连续动作-状态-空间和平铺

连续动作-状态-空间和平铺
EN

Stack Overflow用户
提问于 2017-07-26 17:25:41
回答 1查看 215关注 0票数 2

在习惯了离散动作-状态-空间中的Q-Learning算法之后,我现在想将其扩展到连续空间。为了做到这一点,我阅读了萨顿介绍中的On-Policy Control with Approximation一章。这里,推荐使用像线性函数或ANN这样的可微函数来解决连续动作状态空间的问题。然而,Sutton随后描述了将连续变量映射到离散表示的平铺方法。这总是必要的吗?

为了理解这些方法,我尝试在没有平铺方法和线性基函数q的情况下实现了书中的Hill Climbing Car示例。因为我的状态空间是二维的,而我的操作是一维的,所以我在这个等式中使用了一个三维权重向量w

当我现在尝试选择最大化输出的操作时,如果w_2 > 0,那么明显的答案将是a=1。因此,权重将慢慢收敛到正零,智能体将不会学习到任何有用的东西。由于Sutton能够使用磁贴解决问题,我想知道我的问题是由于没有磁贴方法引起的,还是我做错了什么。那么:平铺总是必要的吗?

EN

回答 1

Stack Overflow用户

发布于 2017-07-26 19:49:23

关于你关于平铺的主要问题,答案是否定的,并不总是有必要使用平铺。

正如您所尝试的,实现一些简单的示例作为爬山汽车是一个好主意,以便完全理解这些概念。然而,在这里,您误解了一些重要的事情。当这本书谈到线性方法时,它指的是参数中的线性,这意味着你可以提取一组(非线性)特征并将它们线性组合。这种近似器可以表示比标准线性回归复杂得多的函数。

你提出的参数化不能表示非线性Q函数。考虑到在Hill Climbing problem中你想要学习这种风格的Q函数:

你需要比这更强大的

。对于您的问题,一个简单的解决方案是使用径向基函数(RBF)网络。在本例中,您使用一组功能(或BF,例如高斯函数)来映射状态空间:

此外,如果您的操作空间是离散的并且很小,最简单的解决方案是为每个操作维护一个独立的RBF网络。为了选择动作,只需计算每个动作的Q值,然后选择具有较高值的动作。这样,您就避免了在连续函数中选择最佳动作的(复杂)优化问题。

你可以在Busoniu等人上找到更详细的解释。使用函数逼近器的强化学习和动态编程一书,第49-51页。它可以在免费的here上使用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45322781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档