一 马尔可夫决策问题

1.在解释马尔可夫决策问题之前,我们首先应该知道马尔可夫过程(Markov Process),简单理解就是未来的行为只取决于现在的状态,而与之前的状态无关。设S_t是t时刻的状态,那么当满足条件:

p[S_{t+1}|S_t]=p[S_{t+1}|S_1,S_2,...,S_t]时,我们说状态S_t具有马尔可夫性质

我们讨论一个简单问题时,状态的数目是有限的,不妨设为n个。从而给出状态转移矩阵的定义:

P_{ss'}=P[S_{t+1}=S'|S_t=s,这个矩阵中的元素aij的值代表从从状态i到状态j的概率。

2.基于马尔可夫过程,我们引入奖励\large R(reward)和折扣因子\large \gamma,问题定义为一个tuple\large <S,P,R,\gamma>,在状态s时,我们可以收获的奖励为\large R_s=E[R_{t+1}|S_t=s].此处R_{t+1}表示可到达的下一个状态的奖励之和\gamma的作用为了能够使得问题能够收敛。从而我们可以知道在某一个状态可以得到的奖励G_t=R_{t+1}+\gamma R_{t+2}+...,t\in S

3.在此之前,我们都没有考虑在某一个状态时如何采取行动,显而易见,在特定的一个状态,可以采取的动作是多样的且有限的,因此我们引入一个新的元素,活动集A,从而引出马尔科夫决策问题tuple<S,P,A,R,\gamma>.

此时,我们有p_{ss'}^a表示在状态s采取动作a到达状态s'的概率,R_s^a表示在状态s下采用动作a能够获得的奖励。

我们给定某一个策略\pi,从而\pi(a|s)表示在状态s下采用动作a的概率。我们给出状态值函数:

\large {\color{Red} V_\pi(s)=E_\pi[\sum_{k=0}^{\infty }\gamma^k R_{t+k+1}|S_t=s]} 

动作值函数:

\large {\color{Red} q_\pi(s,a)=E_\pi[\sum_{k=0}^{\infty }\gamma^k R_{t+k+1}|S_t=s,A_t=a]}

基于上面的两个式子,我们给出贝尔曼方程:

\large V(s)=E[G_t|S_t=s]=E[R_{t+1}+\gamma R_{t+2}+...|S_t=s]

           \large =E[R_{t+1}+\gamma G_{t+1}|S_t=s]=E[R_{t+1}+\gamma V(S_{t+1})|S_t=s]

同样的,我们可以得到\large q_\pi(s,a)=E[R_{t+1}+\gamma q_\pi(S_{t+1},A_{t+1})|S_t=s,A_t=a]

在这个图中,我们简单的往前看两步,可以看到,\large V_\pi(s)=\sum _{a\in A}\pi(a|s) q_\pi(s,a)\large q_\pi(s,a)=R_s^a+\gamma \sum_{s'}p_{ss'}^aV_\pi(s')

将后者带入前式可以得到\large V_\pi(s)=\sum _{a\in A}\pi(a|s)}(R_s^a+\gamma \sum_{s'}p_{ss'}^aV_\pi(s'))=r+\gamma P_{ss'}V_\pi(s').此处的V,r都是列向量

   \large P_{ss'}则是状态转移矩阵。我们将这个式子移项可得 \large v=(E-\gamma P_{ss'})^{-1}r

通过以上的方法,我们可以计算出每个状态的值函数,我们的任务是在问题中找到某一条路径,使得最后收获的值函数收获最大

 

参考文献:

《深入浅出强化学习-原理入门》,郭宪,方勇纯编著,电子工业出版社,2018.1

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值