马尔可夫属性(The Markov Property)
说到马尔可夫决策过程,我们先来谈谈什么是马尔可夫属性。马尔可夫属性的概念为:下一个状态或奖励仅仅与当前的动作或状态有关,与历史(过去)的选择无关,即,
马尔可夫决策过程
马尔可夫决策过程即为在满足马尔可夫属性的前提下,进行强化学习的过程。也就是说,在马尔可夫决策过程中,要有强化学习的组成部分(如:policy, action, reward等)。
列1: (垃圾回收机器人)
垃圾回收机器人基于自己电池的含量来决定相应的动作。当电量很高的时候,机器人可以在路上到处寻找垃圾来进行回收,也可以呆在原地不动,等着人类把垃圾送进自己的肚囊。如果电量很低的话,机器人可以选择去充电,也可以选择呆在原地不动,同时,仍然可以选择花费更多的电力去得到垃圾。
机器人在不同的状态下采取不同的动作会得到相应的奖励。如图所示:
根据表格可知,第一列表示的是当前的状态,第二列表示的是执行动作之后的状态,a表示的是动作,倒数第二列代表执行相应动作的概率,也就是transition state probability。最后一列代表采取该行动赢得的奖励。若当前状态为low,且仍然执行search动作导致机器人没电,需要人为充电的话,其reward为-3。
该马尔可夫决策过程图如下所示:
空心的圆点代表回收机器人的电池状态(state),实心圆点代表机器人所做的动作(action)。
值函数(Value Functions)
上一节我们已经说过,值函数是用来评估Agent做的有多好。其值函数的评判标准有两个。第一个是根据所在的状态来评判Agent做的好坏(state value),另外一个则是在给出状态和动作的条件下来评判Agent做的好坏(action value)。
首先,我们先来说一说第一则评判准则(State Value),其公式为:
第二则评判准则(Action Value),其公式如下:
两项评判准则的后推图(Backup,并不是备份的意思,我们可以将其理解为deep learning中的Backpropagation的含义)如下所示:
图中空心圆代表的是状态(state),实心圆代表的是动作(action),s代表的是当前的状态,s'代表的是采取行动a之后的状态,a'的含义雷同。由以上公式可知,我们所求的是在特定状态和动作条件下相应的期望(期望大部分用平均值来表示)。因此,在Backup Diagram中,每一个节点都存在着多个分叉(即多个可能性)。
我们先来看State Value Function,它的注意力主要集中在转变状态之后所得到的回报。State Value Function公式根据Bellman Equation推导,最终得到由三部分组成,其依次分别为policy公式(表示在s状态下采取a行动的概率)、transition-state probability公式(表示在s状态下采取a行动之后转变成s'状态并得到回报值r的概率)和回报值(reward)。根据公式可以看出,当前状态下的State Value需要通过下一个状态s'的State Value来计算得到。因此,我们就需要用到后推算法(Backup)来进行更新,即如上图所示。
Action Value Function与此类似,不同之处在于其主要考虑采取行动时得到的回报。同理,Action Value Function也可以通过Bellman Equation来进行推导(下一节会讲到),最终得到的公式同样与下一个动作a'得到的回报有关。
最优值函数(Optimal Value Functions)
上一节中,我们已经知道了如何去求我们的Value Functions。那得到最优值其实也就是去寻找其相应函数的最大值,即:
Reference
1. Reinforcement Learning An Introduction