第二章:马尔科夫决策过程

2.1 马尔科夫决策过程理论讲解

马尔科夫性

马尔科夫性:系统的下一个状态st+1s_{t+1}仅与当前状态sts_t有关,而与之前的状态无关

定义:状态sts_t是马尔科夫的,当且仅当P[st+1st]=P[st+1s1,...,st]P[s_{t+1}|s_{t}]=P[s_{t+1}|s_1,...,s_t]

马尔科夫随机过程:随机变量序列中的每个状态都是马尔科夫的。

马尔科夫过程

马尔科夫过程是一个二元组(S, P), 且满足:S是有限状态集合,P是状态转移概率。

马尔科夫决策过程:将动作(策略)和回报考虑在内的马尔科夫过程成为马尔科夫随机过程。

马尔科夫决策过程

马尔科夫决策过程由元组(S,A,P,R,γ)(S, A, P, R, \gamma)描述,其中:

  • S为有限的状态集

  • A为有限的动作集

  • P为状态转移概率

  • R为回报函数

  • γ\gamma为折扣因子,用来计算累积回报

马尔科夫决策过程的的状态转移概率是包含动作的,即Pssa=p[St+1=sSt=s,At=a]P^{a}_{ss'}=p[S_{t+1}=s'|S_t=s,A_t=a]

强化学习的目标是给定一个马尔科夫决策过程,寻找最优策略

最优策略:是指状态到动作的映射,策略通常用符号π\pi表示,它是指给定状态ss时,动作集上的一个分布,即

π(as)=p[At=aSt=s]\pi(a|s)=p[A_t=a|S_t=s]

它的含义是:策略π\pi在每个状态ss指定一个动作概率。如果给出的策略π\pi是确定性的,那么策略π\pi在每个状态ss指定一个确定的动作。

累积回报:

Gt=Rt+1+γRt+2+...=k=0γkRt+k+1G_t=R_{t+1}+\gamma R_{t+2}+...=\sum^{\infty}_{k=0}\gamma^kR_{t+k+1}

(1)状态-值函数:累积回报G1G_1的期望

定义:当智能体采用策略pi时,累积回报服从一个分布,累积回报在状态s处的期望值定义为状态-值函数:

vπ(s)=Eπ[k=0γkRt+k+1St=s]v_{\pi}(s)=E_{\pi}[\sum^{\infty}_{k=0}\gamma^kR_{t+k+1}|S_t=s]

相应的,状态-行为值函数定义为:

qπ(s,a)=Eπ[k=0γkRt+k+1St=s,At=a]q_{\pi}(s,a)=E_{\pi}[\sum^{\infty}_{k=0}\gamma^kR_{t+k+1}|S_t=s,A_t=a]

状态值函数的贝尔曼方程

vπ(s)=Eπ[Rt+1+γvπ(St+1)St=s]v_{\pi}(s)=E_{\pi}[R_{t+1}+\gamma v_{\pi}(S_{t+1})|S_t=s]

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

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

状态值函数的计算方式

vπ(s)=aAπ(as)(Rsa+γsSPssavπ(s))v_{\pi}(s)=\sum_{a\in A}\pi(a|s)(R_s^a+\gamma \sum_{s' \in S}P_{ss'}^a v_\pi (s'))

状态行为值函数

qπ(s,a)=Rsa+γsSPssaaAπ(as)qπ(s,a)q_\pi (s,a) = R_s^a+\gamma \sum_{s' \in S} P_{ss'}^a \sum_{a' \in A}\pi(a'|s')q_{\pi}(s',a')

最优状态值函数v(s)v^*(s)为在所有策略中值最大的值函数,即v(s)=maxπvπ(s)v^*(s)=max_\pi v_\pi(s)

最优状态-行为值函数q(s,a)q^*(s,a)为在所有策略中最大的状态-行为值函数,即q(s,a)=maxπqπ(s,a)q^*(s,a)=max_\pi q_\pi(s,a)

因此可以得到最优状态值函数和最优状态-行为值函数的贝尔曼最优方程

v(s)=maxaRsa+γsSPssav(s)v^*(s)=max_a R^a_s + \gamma \sum_{s' \in S}P^a_{ss'}v^*(s')
q(s,a)=Rsa+γsSPssamaxaq(s,a)q^*(s,a)=R^a_s + \gamma \sum_{s' \in S}P^a_{ss'}max_{a'}q^*(s',a')

定义一个离散时间有限范围的折扣马尔科夫决策过程M=(S,A,P,r,ρ0,γ,T)M=(S,A,P,r,\rho_0,\gamma,T)其中SS为状态集,AA为动作集,P:S×A×SRP: S\times A \times S \rightarrow R是转移概率, r:S×A[Rmax,Rmax]r:S\times A\rightarrow[-R_{max}, R_{max}]为立即回报函数,ρ0:SR\rho_0: S \rightarrow R是初始状态分布,γ[0,1]\gamma \in [0,1]是折扣因子,T为水平范围(其实是步数)。τ\tau为一个轨道序列,即τ=(s0,a0,s1,a1,...)\tau = (s_0,a_0,s_1,a_1,...),累积回报为R=t=0TγtrtR = \sum_{t=0}^T \gamma^t r^t,强化学习的目标就是找到最优策略π\pi,使得该策略下的累积回报期望最大,即maxπR(τ)pπ(τ)dτmax_{\pi}\int R(\tau)p_\pi (\tau)d\tau

2.2 MDP中的概率学基础讲解

强化学习中常采用的随机策略。

(1)贪心策略

π(as)={1a=argmaxaAq(s,a)0otherwise\pi_*(a|s)= \begin{cases} 1&a=argmax_a\in Aq_*(s,a)\\ 0&otherwise \end{cases}

(2)ε\varepsilon-greedy策略

π(as)={1ε+εA(s)a=argmaxaAq(s,a)εA(s)otherwise\pi_*(a|s)= \begin{cases} 1-\varepsilon+\frac{\varepsilon}{|A(s)|}&a=argmax_a\in Aq_*(s,a)\\ \frac{\varepsilon}{|A(s)|}&otherwise \end{cases}

(3)高斯策略

πθ=μ+ε,ε N(0,σ2)\pi_\theta = \mu + \varepsilon, \varepsilon~N(0,\sigma^2)

(4)玻尔兹曼分布

π(as,θ)=exp(Q(s,a,θ))bexp(Q(s,b,θ))\pi(a|s,\theta)=\frac{exp(Q(s,a,\theta))}{\sum_b exp(Q(s,b,\theta))}

Last updated

Was this helpful?