写点什么

李宏毅深度强化学习课程:Q-learning for Continuous Actions

  • 2019-12-02
  • 本文字数:602 字

    阅读完需:约 2 分钟

李宏毅深度强化学习课程:Q-learning for Continuous Actions


传统的 Q-learning 的动作空间是离散的,有限数目的,比如上下左右四个动作。但是很多场景下,动作都是连续的,比如方向盘的转动角度,机器臂的转动角度等。有三个方法解决:第一个方法是随机 sample N 个动作,看哪个能获得最大的 Q 值;第二个办法是梯度下降来解决优化问题,但是计算量会很大,并且容易陷入局部最优。



设计一个网络让优化问题变得简单,其实就是如何构建一个神经网络,又能输出动作,也能输出 Q 值,而且动作对应的 Q 值最大。


基本的 idea 就是引入 Advantage,也就是每一个动作在特定状态下的优劣。我们不是要选最优的动作吗?其实就是要选 Advantage 最大的动作。Q,A(Advantage)和 V(Value)的关系如下:



如果我们能够限制 A 小于等于 0,并且选择的动作对应的 A 为 0,那么此时选择的这个动作的 Q 值是最大的。要做到这点,一种简单的想法就是让:



并且 P 为正 ,这个时候当 a=x 即选择的动作时为 0。


A 的矩阵表示为:



其中 x 是状态,u 是动作, [公式] 是神经网络的输出动作。令 [公式] ,即:



即 [公式] ,要满足这个要求,P 必须为正定矩阵。作者构造了一个对角线元素都是正数的下三角阵 L,然后再利用 L 构造 P。


具体过程如下:



另外还有一种方法是使用 Actor-critic 方法:



参考文献:


https://www.bilibili.com/video/av24724071/?p=5


https://www.cnblogs.com/wangxiaocvpr/p/5664795.html


本文转载自 Alex-zhai 知乎账号。


原文链接:https://zhuanlan.zhihu.com/p/73309906


2019-12-02 13:301167

评论

发布
暂无评论
发现更多内容
李宏毅深度强化学习课程:Q-learning for Continuous Actions_文化 & 方法_Alex-zhai_InfoQ精选文章