【论文】The Option-Critic Architecture阅读笔记

本文将对经典文献“The Option-Critic Architecture”进行解读。

参考博客:

1.【分层强化学习】The Option-Critic Architecture 阅读笔记 - 知乎 (zhihu.com)

2.分层强化学习:基于选项(option)的强化学习/论文笔记 The Option-Critic Architecture 2017 AAAI_UQI-LIUWJ的博客-CSDN博客

Option框架

option框架对时间扩展的动作进行了定义。一个马尔科夫选项(option)可以用三元组表示,其中 表示能够初始化选择的状态集合,表示选择内策略,表示终止函数。假设对于 均有​​,即所有选择均在任何状态下都可以存在。

option的存在使得 MDP 变成了 半马尔科夫过程(Semi-Markov Decision Process),该过程有对应option 的最优价值函数与最优选择价值函数

在该设定下,需要解决的问题有:

  • 学习option上的价值函数与策略(value function and policy over options)
  • 学习option内的策略与终止函数(intra-option policies and termination functions)

学习Option 

考虑call-and-return的选项执行模型,假设一个智能体首先根据 policy over options来选择策略,然后根据 intra-option policy选择动作直到该option终止,终止条件由决定,该过程会被多次重复。用 分别表示选项的intra-policy policy 与 termination function,其中表示需要学习的模型参数。

根据策略梯度的思想,策略的优化目标是最大化指定状态与Option下的期望收益:这个结果取决于policy over options
,option policies and termination functions。与原始策略梯度中优化目标唯一的不同是这里使用 (S0,W0) 替代了 S0 )。

定义价值函数

在计算该目标函数对于 与 的梯度之前,定义三种价值函数:

1.Option-Value Function

是在某个状态下选择某个Option所能产生的总收益。

对应V(s):如果将(s,w)表示成为一个增强状态空间,则Option-Value Function就是MDP中的Value Function。令s'=(s,ω),

2.Action-Value Function

是在某个状态下,选择了某个Option的前提下,采取某个Action所能产生的总收益。

 对应Q(s,a):如果将(s,w)表示成为一个增强状态空间,则Action-Value Function就是MDP中的Q Function。令s'=(s,ω),

3.Option-Value Function upon arrival in the state

这里是与MDP不一样的价值函数。 

由于有中断函数β的存在,到达下一状态之后,我们要考虑是否跳出当前option:有的概率转移到其他w’,也有(1-)的概率不发生转移。因而下一个状态的值函数需要综合考虑中断了当前option的情况和继续当前option 的情况。

  • 如果继续执行当前option,即不中断,那么下一状态的价值自然由 Option-Value Function描述。
  • 如果中断了当前Option,此时新的Option还没有选择出来。那么新状态下的价值就只能由更高层次的策略函数下新状态的Value Function描述,用以描述选择不同Option的期望价值。

推导马尔可夫链

 仍然是在增强状态空间下考虑问题。

1.一步转移方程

假设状态下Option被初始化(执行),那么下一时刻增强状态转移到 的1步折扣概率为:

合并在一起不是特别能够理解这个表达式的含义,如果将它展开成:

则可以明白这个表达式的意思是表示不退出 Option 和退出 Option 的概率。

2.多步转移方程

推导策略梯度 

1.复习policy gradient

强化学习与多智能体强化学习(二)——策略梯度-CSDN博客

2.intra-option policy gradient

由于这里学习的是 intra-option即option内的策略,因此折扣收益应当也是给定 option条件下的,此时实际上就对应着(相比于普通策略梯度里用,这里用增强状态替代了状态 )

类似于梯度策略,令目标函数为

然后计算其策略梯度,论文中的展现形式是:

用类似强化学习笔记:policy learning_UQI-LIUWJ的博客-CSDN博客 的推理,我们可以得到

\frac{\partial J(\theta)}{\partial \theta}=E_{S,\omega}[E_{a\sim\pi(\cdot|S;\theta)}\frac{\partial ln\pi_{\omega,\theta}(a|s)}{\partial \theta}\cdot Q_U(s,\omega,a)]

用它来进行梯度上升,更新参数。

3.termination gradient 

 termination function决定了执行 时下一个状态是否会继续停留在此option,因此开始状态时,而对应的价值函数也应当是抵达时的option价值函数

 因为当选择的option的价值相对于所有option的平均价值而言是次优的时,优势函数是负的,此时它会指引着termination function朝着正方向增加,也就是增加该选项的终止概率,这是符合直觉的(该option不好,跳到下一个option)。所以这里考虑的是梯度下降?

最终得到

整体算法流程

在较快的时间尺度上学习价值函数,而在较慢的时间尺度上学习intra-option policies和termination functions。 

actor-critic框架:

  • actor部分:intra-option policies,termination function 以及 policy over options
  • critic部分:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值