Reinforcement Learning:An introduction读书笔记-Chapter 3

Chapter 3 Finite Markov Decision Processes

3.1 The Agent-Environment Interface


在每一步t,agent都会接收到环境的state, StS ,在此基础上选择一个action, AtA(St) ,即在state S下所有可选的action。在下一步中,agent收到了reward(reward是在agent之外的), Rt+1 ,并且发现自己在一个新的state, St+1

在每一步agent都会有一个关于states到选择某个action可能性的映射,这就是policy, πt(a|s) 即为在state s 时选择action a的可能性。

所有不能被agent直接改变的就是environment,agent-environment的界限是绝对控制而不是是否能得到完整的信息。

3.2 Goals and Rewards

选取reward时必须满足agent让reward最大化同时也能达成我们设定的目标。告知它你想达到的目标是什么,而不是如何达到这个目标。比如在围棋中,我们应将赢得棋局的reward设置为+1,而不是吃到敌方棋子作为+1,否则agent可能会以输掉棋局的代价吃到更多敌方棋子。

我们将reward定义在agent之外并不妨碍有些agent拥有内在的reward(internal rewards)

3.3 Returns

return Gt 是关于reward序列的某一个函数。
episodic tasks:agent-environment交互可以很自然的被分成称为episodes的子序列的tasks。 S+ 用来表示terminal state。在这种情况下其return一般定义如下(T即terminal state):

GtRt+1+Rt+2+Rt+3+...+RT

continuing tasks:在很多情况下agent-environment交互不能被很自然的分成定义好的episodes,而是无限制的一直连续下去,或者要持续很长时间。return的一般定义如下:
GtRt+1+γRt+2+γ2Rt+3+...=k=0γkRt+k+1

其中 0γ1 ,被称为discount rate。如果 γ<1 ,只要 Rk 是有界的,那么无限的加和式是有限的值,当 γ=0 说明其只看重即时的reward, γ 越靠近1说明其将未来的reward看的越重。

3.4 Unified Notation for Episodic and Continuing Tasks

St,i :在第i个episode,t时间节点时的state,action,reward,policy等可以此类推
为了让episodic task和continuing task可以一同表示,我们将episode 的结束看作是一个特殊的state,absorbing state,在这个state它只会从该状态转化为自己本身,reward为0。

就像上图所示,整个reward sequence就可以看成+1,+1,+1,0,0,…就转化成了一个无限的序列。这样一来无论是episodic task还是continuing task的return就可以统一定义成下式,只是涵盖了 γ=1 T= 的可能性(两个可能性不能同时满足,在第十章会引入共存的情况。)

Gtk=0Tt1γkRt+k+1

3.5 The Markov Property

Markov property:
一般情况下在t+1时environment做出的对于在t时action的回应是由之前所有发生过的事情决定的,可以用下式表示。

Pr{St+1=s,Rt+1=r|S0,A0,R1,...,St1,At1,Rt,St,At}

如果一个state signal有Markov property,t+1时刻environment做出的回应值决定于t时的state和action,可用下式表示:
p(s,r|s,a)PrSt+1=s,Rt+1=r|St=s,At=a

换句话说,一个state signal有Markov property并是Markov state当且仅当对所有 s,r 及所有历史state和action而言第一个式子都是等于 p(s,r|St,At) 的。在这种情况下environment和task本身都满足Markov property。

如果一个environment满足Markov property,只要给出现在的state和action就可以预测出下一个state和期望得到的reward。只要不断的重复这个过程,就可以推测出未来所有的state和期望得到的reward,其效果和知道所有到目前为止完整的历史state与action一样。也就是说一个关于Markov state的最优policy函数是与关于所有历史信息的最优policy函数一样可靠的。
就算一个state不是完全符合Markov的,但我们可以把它想做一个接近markov的状态。

3.6 Markov Decision Processes

一个满足markov性质的增强学习task叫做markov decison process或者MDP,如果state和action的空间都是有限的就叫做有限MDP。
一个典型的有限MDP,是由state和action集以及每一步环境的动态变化定义的。只要给出state s和action a,以及所有下一个可能成为的state和获得的reward,就可以计算出所有关于环境的信息,比如state action对的期望reward、state的转化概率、满足state-action-next-state的三元组的reward的数学期望等。finit MDP可以写做可以写做

p(s,r|s,a)Pr{St+1=s,Rt+1=r|St=s,At=a}

state-action对的期望reward则可以写做
r(s,a)E[Rt+1|St=s,At=a]=rRrsSp(s,r|s,a)

state的转化概率可以写做
p(s|s,a)Pr{St+1=s|St=s,At=a}=rRp(s,r|s,a)

满足state-action-next-state的三元组的reward的数学期望可以写成
r(s,a,s)E[Rt+1|St=t,At=a,St+1=s]=rRrp(s,r|s,a)p(s|s,a)

事实上就是在 St=s,At=a,St+1=s 的情况下reward的数学期望,每个reward占到的概率是 p(s,r|s,a)p(s|s,a)

在transition graph中有state nodes和action nodes,一个action node对应的所有的转化概率加起来为1,下图是一个transition graph,大的圆(里面写着low 和 high的)是state nodes,小的实心的是action node。每个箭头上前面那个数字是转化的概率,后面那个数字是对应三元组的reward的期望。

Value Function

value function是一个评估某个state的好坏,或者是在某个state采取某个action的好坏。这里的好坏指的是可以期望的未来的reward。
vπ(s) 表示的是state s在 policy π 条件下的value。

vπ(s)Eπ[Gt|St=s]=Eπ[k=0γkRt+k+1|St=s]

Eπ[] 代表的是在policy π 情况下任意时刻的期望。所有的terminal state的value都是0, vπ 函数是policy π 的state-value function。
qπ(s,a) 代表的是在state s并在policy π 的情况下采取action a 的reward的期望。
qπ(s,a)Eπ[Gt|St=s,At=a]=E[k=0γkRt+k+1|St=s,At=a]

qπ 是policy π 的 action-value function。
vπ(s) 满足下述递归式。
vπ(s)Eπ[k=0γkRt+k+1|St=s]=Eπ[Rt+1+γk=0γkRt+k+2|St=s]=aπ(a|s)srp(s,r|s,a)[r+γEπ[k=0γkRt+k+2|St+1=s]]//π(a|s)state saaction//psreward r,rs//reward rrewardvalue=aπ(a|s)s,rp(s,r|s,a)[r+γvπ(s)]

上式就是对于 vπ 的Bellman equation,下图就是backup diagrams,它表示了增强学习中一个很重要的操作backup:将value的信息从后续的state回传给上一个state

Optimal Value Function

当且仅当对于所有 sS 都有 vπ(s)vπ(s) ,则称 ππ 。总存在至少这样一个policy是优于或等于其他所有的policy的,这就是optimal policy,用 π 来表示。optimal policy可能有很多个,但它们都共享同样的state-value function,记作 v 。并且满足下式:

v(s)maxπvπ(s)sS

它们也共享相同的optimal action-value function,记作 q ,可以定义成
q(s,a)maxπqπ(s,a)

也可以写成 v 的形式
q(s,a)=E[Rt+1+γv(St+1)|St=s,At=a]

因为 v(s) 是最优的,所以它的值必定等于在那个state最优的action的return,也就可以表示成
v(s)=maxaA(s)qπ(s,a)=maxaEπ[k=0γkRt+k+1|St=s,At=a]=maxaE[Rt+1+γv(St+1)|St=s,At=a]=maxaA(s)s,rp(s,r|s,a)[r+γv(s)]

q 也可以换一种表达方式
q(s,a)=s,rp(s,r|s,a)[r+γmaxaq(s,a)]

上述式子称为Bellman optimality equation
事实上我们只要知道 p(s,r|s,a) 就可以通过上述的式子推导出 v ,因为每个s有这样一个等式,如果有N个state也就有N个等式,有N个未知数,就可以通过非线性方程解出来。得到了 v 也就可以得出 q 。这也就意味着我们只要在每个state greedy地找到一个action使得Bellman optimality equation最大化就可以了。本来greedy是一个短期的概念,但因为value本来就考虑了长远的reward,就使得只要greedy地专注于短期的或者说某一步的最优就可以得到长期的最优,就将return从长期转化到了每个state局部、立马可得的。
虽然接触Bellman optimality equation可以得到最优的policy,但是很少是直接有效的,因为这要求穷举,找出所有的可能性。这个解决方案建立在至少以下3个假设上:

  1. 可以很精确地知道环境的动态
  2. 有足够多的计算资源
  3. 符合马尔可夫
    很多增强学习的问题都可以看作是近似解出Bellman optimality equation

Optimality and Approximation

主要要克服的问题:计算力的限制(尤其是每一步计算力的限制),空间的限制
增强学习on-line学习的本质让其放更多的精力在经常出现的情况上,在这些情况上做更好的决定,而不是专注于不经常出现的情况。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值