本文将对经典文献“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
2.intra-option policy gradient
由于这里学习的是 intra-option即option内的策略,因此折扣收益应当也是给定 option条件下的,此时实际上就对应着(相比于普通策略梯度里用,这里用增强状态替代了状态 )
类似于梯度策略,令目标函数为
然后计算其策略梯度,论文中的展现形式是:
用类似强化学习笔记:policy learning_UQI-LIUWJ的博客-CSDN博客 的推理,我们可以得到
用它来进行梯度上升,更新参数。
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部分:与