强化学习基础知识笔记[1] - 马尔可夫决策过程

强化学习基本原理

智能体通过动作A与环境进行交互,形成状态S->S’的改变并得到回报R。在不断的交互过程中,强化学习利用交互得到的数据修正自身的动作策略,最终习得该环境下完成相应任务的最优策略。

参考资料
[1] 强化学习入门 第一讲 MDP

预备知识 - 马尔可夫概念

马尔可夫性

马尔可夫性指系统下一状态 S t + 1 S_{t+1} St+1仅与当前状态 s t s_{t} st有关,与以前的状态无关,当前状态可以反映所有历史状态。
公式描述:
P [ s t + 1 ∣ s t ] = P [ s t + 1 ∣ s 1 , s 2 , . . . , s t ] (1.1) P[s_{t+1}|s_t] = P[s_{t+1}|s_1,s_2,...,s_t] \tag{1.1} P[st+1st]=P[st+1s1,s2,...,st](1.1)

马尔可夫随机过程

随机过程即一组随机变量序列,马尔可夫随机过程指其中的每一个随机变量均具有马尔可夫性,即只与前一个随机变量相关。

马尔可夫过程

马尔可夫过程定义为:二元组(S,P),S为有限状态集合,P为状态转移概率矩阵。
P = [ P 11 ⋯ P 1 n ⋮ ⋱ ⋮ P n 1 ⋯ P n n ] (1.2) P = \left[ \begin{matrix} P_{11} & \cdots & P_{1n} \\ \vdots & \ddots & \vdots \\ P_{n1} & \cdots & P_{nn} \\ \end{matrix} \right] \tag{1.2} P=P11Pn1P1nPnn(1.2)

马尔可夫链

给定马尔可夫过程(S,P)后,从一状态出发到一状态结束存在多条路径,每条路径为马尔可夫链。

马尔可夫决策过程

马尔可夫决策过程定义为:多元组(S, A, P, R, γ)
其中:

  • S为有限状态集合
  • A为有限动作集合
  • P为状态转移概率
  • R为回报函数
  • γ为折扣因子

马尔可夫决策过程的状态转移包含概率:
P s s ′ a = P [ S t + 1 = s ′ ∣ S t = s , A t = a ] (1.3) P^{a}_{ss'} = P[S_{t+1} = s'|S_t = s, A_t = a] \tag{1.3} Pssa=P[St+1=sSt=s,At=a](1.3)
理解:

  • P s s ′ a P^{a}_{ss'} Pssa为采取动作a从状态s转移到s’的概率

马尔可夫决策过程与强化学习

强化学习的目标

给定马尔可夫决策过程(S, A, P, R, γ),寻找一组最优策略:
π ( a ∣ s ) = p [ A t = a ∣ S t = s ] (2.1) \pi(a|s) = p[A_t = a | S_t = s] \tag{2.1} π(as)=p[At=aSt=s](2.1)

解释:

  • π \pi π为一个集合,其中元素为在s状态下采取行为a的概率。

采取概率的原因:为了将探索的过程融合到采样过程中,以便学习新的策略。

累计回报函数

累计回报定义为 G t G_t Gt
G t = R t + 1 + γ R t + 2 + . . . = ∑ k = 0 ∞ γ k R t + k + 1 (2.2) G_t = R_{t+1} + \gamma R_{t+2} + ... = \sum^{\infty}_{k=0} \gamma ^{k}R_{t+k+1} \tag{2.2} Gt=Rt+1+γRt+2+...=k=0γkRt+k+1(2.2)

理解:

  • R t + 1 R_{t+1} Rt+1为采取某一行动a从初始状态 S t S_t St转换到 S t + 1 S_{t+1} St+1获得的回报
  • γ为折扣因子

因为从状态St出发到结束存在多种路径,经历每一条路径需要不同的行动,且获得的回报也不一定相同。
根据(2.1)式,策略为一个概率,因此对于累计回报函数而言其取值为一个随机变量,分布由策略 π \pi π决定 -> 需要根据数字特征研究其性质。

状态值函数

状态值函数为累计回报函数的数学期望:
v π ( s ) = E π [ G t ] = E π [ ∑ k = 0 ∞ γ k R t + k + 1 ∣ S t = s ] (2.3) v_\pi (s) = E_\pi[G_t] = E_\pi \left[ \sum^{\infty}_{k=0} \gamma ^{k}R_{t+k+1} | S_t = s \right] \tag{2.3} vπ(s)=Eπ[Gt]=Eπ[k=0γkRt+k+1St=s](2.3)

理解:

  • 下标 π \pi π为给定的策略,其决定累计回报函数G的分布
  • 表示给定策略组 π \pi π、初始状态s的条件下,采取不同行动、路径得到的累计回报值的均值

状态值函数贝尔曼方程

v π ( s ) = E π [ G t ∣ S t = s ] = E π [ R t + 1 + γ v ( S t + 1 ) ∣ S t = s ] (2.3.1) v_\pi (s) = E_\pi[G_t | S_t = s] = E_\pi[R_{t+1} + \gamma v(S_{t+1}) | S_t = s] \tag{2.3.1} vπ(s)=Eπ[GtSt=s]=Eπ[Rt+1+γv(St+1)St=s](2.3.1)
贝尔曼方程刻画了状态值函数的递推形式。

状态-行为值函数

q π ( s , a ) = E π [ ∑ k = 0 ∞ γ k R t + k + 1 ∣ S t = s , A t = a ] (2.4) q_\pi (s,a) = E_\pi \left[ \sum^{\infty}_{k=0} \gamma ^{k}R_{t+k+1} | S_t = s , A_t = a \right] \tag{2.4} qπ(s,a)=Eπ[k=0γkRt+k+1St=s,At=a](2.4)

理解:

  • 下标 π \pi π为给定的策略,其决定累计回报函数G的分布
  • 表示给定策略组 π \pi π、初始状态s、初始行为a的条件下,采取不同行动、路径得到的累计回报值的均值

状态-行为值函数贝尔曼方程

q π ( s , a ) = E π [ R t + 1 + γ v ( S t + 1 , A t + 1 ) ∣ S t = s , A t = a ] (2.4.1) q_\pi (s,a) = E_\pi[R_{t+1} + \gamma v(S_{t+1}, A_{t+1}) | S_t = s, A_t = a] \tag{2.4.1} qπ(s,a)=Eπ[Rt+1+γv(St+1,At+1)St=s,At=a](2.4.1)

式(2.3)-(2.4)详细推导过程参考[1],这里就偷懒不写了(((

状态值函数与状态-行为值函数的关系

v π ( s ) = ∑ a ∈ A π ( a ∣ s ) q π ( s , a ) (2.5.1) v_\pi (s) = \sum_{a \in A} \pi(a|s)q_{\pi}(s,a) \tag{2.5.1} vπ(s)=aAπ(as)qπ(s,a)(2.5.1)

理解:

  • π ( a ∣ s ) \pi(a|s) π(as)为在策略 π \pi π下采取行动a的概率
  • q π ( s , a ) q_{\pi}(s,a) qπ(s,a)为在状态s下采取行动a后在策略 π \pi π下期望的回报

q π ( s , a ) = R s a + γ ∑ s ′ P s s ′ a v π ( s ′ ) (2.5.2) q_\pi (s,a) = R^a_s + \gamma\sum_{s'} P^{a}_{ss'}v_{\pi}(s') \tag{2.5.2} qπ(s,a)=Rsa+γsPssavπ(s)(2.5.2)

理解:

  • R s a R^a_s Rsa为在s下采取a的回报
  • P s s ′ a P^{a}_{ss'} Pssa为采取动作a从状态s转移到s’的概率

从式(2.5.1),(2.5.2)中可以看出,状态值函数与状态-行为值函数在递推过程中存在相互转化的关系。

最优策略与最优状态函数

最优状态函数:

v ∗ ( s ) = m a x π v π ( s ) (2.6.1) v^*(s) = max_{\pi}v_{\pi}(s) \tag{2.6.1} v(s)=maxπvπ(s)(2.6.1)

其贝尔曼方程形式:
v ∗ ( s ) = m a x a R s a + γ ∑ s ∈ S P s s ′ a v ∗ ( s ′ ) (2.6.2) v^*(s) = max_{a}R^a_{s} + \gamma\sum_{s \in S} P^{a}_{ss'}v^*(s') \tag{2.6.2} v(s)=maxaRsa+γsSPssav(s)(2.6.2)

最优状态-行为值函数:

q ∗ ( s , a ) = m a x π q π ( s , a ) (2.6.3) q^*(s,a) = max_{\pi}q_{\pi}(s,a) \tag{2.6.3} q(s,a)=maxπqπ(s,a)(2.6.3)

其贝尔曼方程形式:
q ∗ ( s , a ) = R s a + γ ∑ s ∈ S P s s ′ a m a x a ′ q ∗ ( s ′ , a ′ ) (2.6.4) q^*(s,a) = R^a_{s} + \gamma\sum_{s \in S} P^{a}_{ss'}max_{a'}q^*(s',a') \tag{2.6.4} q(s,a)=Rsa+γsSPssamaxaq(s,a)(2.6.4)

理解:

  • 在状态s下采取a得到回报后,对于采取该行动所有可达的状态均采取最大的状态-行为值函数(其实也是策略的选择)

在已知最优状态-动作值函数,可直接选择最优策略:
π ∗ ( a ∣ s ) = { 1 i f a = a r g m a x q ∗ ( s , a ) 0 o t h e r (2.7) \pi_*(a|s) = \left\{ \begin{aligned} 1 && if a = argmaxq_*(s,a)\\ 0 && other \end{aligned}\right. \tag{2.7} π(as)={10ifa=argmaxq(s,a)other(2.7)

强化学习的目标

给定马尔可夫决策过程
M = ( S , A , P , r , ρ 0 , γ , T ) (3) M = (S, A, P, r, \rho0, \gamma, T) \tag{3} M=(S,A,P,r,ρ0,γ,T)(3)
其中:

  • S为状态集合
  • A为动作集合
  • P为转移概率 S ∗ A ∗ S ′ → R S * A * S' \to R SASR,即在s下采取动作a转移到s’的概率,是一个到实数域的映射
  • r为 S ∗ A → [ − R m a x , R m a x ] S * A \to [-R_{max}, R_{max}] SA[Rmax,Rmax],立即回报函数,状态s下采取a的回报
  • γ ∈ [ 0 , 1 ] \gamma \in [0,1] γ[0,1]为折扣因子
  • T为水平范围(步数)

强化学习的目标可以描述为:在给定上述马尔可夫决策过程下,找到最优策略 π \pi π,最大化累计回报函数(2.2)。

需要说明的是,当值函数最优时采取的策略也是最优的。反过来,策略最优时值函数也最优。

你可能感兴趣的:(强化学习笔记,概率论,机器学习,人工智能,强化学习,马尔科夫决策过程)