学习目标
-
Agent和Environment之间的交互过程;
-
理解马尔科夫决策过程(Markov Decision Processes,MDPs)和如何解读转换图;
-
理解值函数(Value Functions)、动作值函数(Action-Value Functions)和决策函数(Policy Functions)
-
理解贝尔曼方程(Bellman Equations)和值函数或者动作值函数的贝尔曼最优方程。
Agent与Environment的交互
对于从交互过程中学习,最终达到目标的这种问题,MDPs旨在建立一种简单直接的框架来描述这种问题,上一节已经简单的说明了Agent与Environment的关系,如下图所示
Agent每完成一个action,就会从environment得到反馈——state和reward。总结起来说,action就是一个任务中agent做出的选择;state是做出选择的基础;reward是评价这个选择做的好不好的基础。
马尔科夫过程(Markov Process,MP)
我们说一个state若满足 ,则其具有马尔可夫性,即该state完全包含了历史中的所有信息。马尔科夫过程是无记忆的随机过程,即随机状态序列 具有马尔可夫属性。
一个马尔科夫过程可以由一个元组组成 ⟨ S , P ⟩ \langle\mathcal{S}, \mathcal{P}\rangle ⟨S,P⟩
- S \mathcal{S} S 为(有限)的状态(state)集;
- P \mathcal{P} P 为状态转移矩阵, P s s ′ = P [ S t + 1 = s ′ ∣ S t = s ] \mathcal{P}_{s s^{\prime}}=\mathbb{P}\left[S_{t+1}=s^{\prime} | S_{t}=s\right] Pss′=P[St+1=s′∣St=s] 。所谓状态转移矩阵就是描述了一个状态到另一个状态发生的概率,所以矩阵每一行元素之和为1。
马尔科夫决策过程(Markov Decision Process,MDP)
MDP相对于MP加入了瞬时奖励 R \mathcal{R} R(Immediate reward)、动作集合 A \mathcal{A} A 和折扣因子 γ \gamma γ(Discount factor),这里的瞬时奖励说的是从一个状态 s s s 到下一个状态 s ′ s^{\prime} s′ 即可获得的rewards,虽然是“奖励”,但如果这个状态的变化对实现目标不利,就是一个负值,变成了“惩罚”,所以reward就是我们告诉agent什么是我们想要得到的,但不是我们如何去得到。
MDP由元组 ⟨ S , A , P , R , γ ⟩ \langle\mathcal{S}, \mathcal{A}, \mathcal{P}, \mathcal{R}, \gamma\rangle ⟨S,A,P,R,γ⟩ 定义。其中
- S \mathcal{S} S 为(有限)的状态(state)集;
- A \mathcal{A} A 为有限的动作集;
- P \mathcal{P} P 为状态转移矩阵。所谓状态转移矩阵就是描述了一个状态到另一个状态发生的概率,所以矩阵每一行元素之和为1。 P s s ′ a = P [ S t + 1 = s ′ ∣ S t = s , A t = a ] \mathcal{P}_{s s^{\prime}}^{a}=\mathbb{P}\left[S_{t+1}=s^{\prime} | S_{t}=s, A_{t}=a\right] Pss′a=P[St+1=s′∣St=s,At=a]
- R \mathcal{R} R 为回报函数(reward function), R s a = E [ R t + 1 ∣ S t = s , A t = a ] \mathcal{R}_{s}^{a}=\mathbb{E}\left[R_{t+1} | S_{t}=s, A_{t}=a\right] Rsa=E[Rt+1∣St=s,At=a]
- γ \gamma γ 为折扣因子,范围在[0,1]之间, 越大,说明agent看得越“远”。
值函数(Value Function)和动作值函数(action-value function)
这里就不得不提一个概念——回报 G t G_{t} Gt (Return),回报 描述了从时间 t t t 起的总折扣奖励,即
G t = R t