强化学习二-举例理解概念

MDP(离散型)概念理解(二)

参考链接:https://blog.csdn.net/weixin_46185085/article/details/107598554

一、说明基础概念

假设一个节点得状态空间为 S = { 0 , 1 , 2 , 3 , . . . , 13 } S=\{0,1,2,3,...,13\} S={0,1,2,3,...,13},动作空间为 A = { − 2 , − 1 , 0 , 1 , 2 } A=\{-2,-1,0,1,2\} A={2,1,0,1,2},其中初始得一个策略为
π ( a ∣ s ) = { 0.8 , s < = 5 , − I m a x ≤ a < 0 0.2 s < = 5 , a = 0 0.8 5 < s < Z v − 5 , a = 0 0.1 5 < s < Z v − 5 , a < 0 0.1 5 < s < Z v − 5 , a > 0 0.8 Z v − 5 ≤ s < Z v , 0 < a ≤ I m a x 0.2 Z v − 5 ≤ s < Z v , a = 0 \pi(a|s)=\begin{cases}0.8,&s<=5 ,-I_{max}\leq a <0\\ 0.2 & s<=5, a=0\\ 0.8 &5<s<Z_v-5,a=0 \\ 0.1 & 5<s<Z_v-5,a<0\\ 0.1 &5<s<Z_v-5,a>0 \\ 0.8 & Z_v-5\leq s<Z_v,0<a\leq I_{max}\\ 0.2 & Z_v-5 \leq s <Z_v,a=0\end{cases} π(as)=0.8,0.20.80.10.10.80.2s<=5,Imaxa<0s<=5,a=05<s<Zv5,a=05<s<Zv5,a<05<s<Zv5,a>0Zv5s<Zv,0<aImaxZv5s<Zv,a=0

注意到,这里得假设 Z v = 13 , I m a x = 2 Z_v=13,I_{max}=2 Zv=13,Imax=2 ,具体的用示意图1表示为:
在这里插入图片描述

1.1 状态转移概率

  • 公式: P s s ′ a = E ( S t + 1 ∣ S t = s , A t = a ) P^a_{ss'}=E(S_{t+1}|S_t=s,A_t=a) Pssa=E(St+1St=s,At=a),在当前状态s,动作a下的转移到状态s’的概率期望
  • 举例: P 4 , 8 0 = P ( S t + 1 = 8 ∣ S t = 5 , a t = 0 ) = 0.05 P^0_{4,8}=P(S_{t+1}=8|S_t=5,a_t=0)=0.05 P4,80=P(St+1=8St=5,at=0)=0.05,在当前状态为4,动作为0,转移到状态为8的概率
    P 4 , 8 = 0. 2 ( a = 0 ) × 0.05 + 0. 4 ( a = − 1 ) × 0.1 + 0. 4 ( a = − 2 ) × 0.1 + 0 ( a = 1 ) + 0 ( a = 2 ) = 0.09 P_{4,8}=0.2_{(a=0)}\times 0.05 +0.4_{(a=-1)}\times 0.1 +0.4_{(a=-2)}\times0.1 +0_{(a=1)}+0_{(a=2)}=0.09 P4,8=0.2(a=0)×0.05+0.4(a=1)×0.1+0.4(a=2)×0.1+0(a=1)+0(a=2)=0.09。在当前状态为4,不知道动作,转移到状态为8,的概率期望

1.2 报酬

  • 即时报酬: R s s ′ a R^a_{ss'} Rssa:在当前状态s下,执行动作a后,转移到状态s’后,得到的报酬。假设我们报酬为完成的自行车行程数量。在单个节点中,我们利用“出量+进量之和”作为该动作的报酬。如上: R 48 0 = 6 ( 走 了 1 辆 车 , 来 了 5 辆 车 ) R^0_{48}=6(走了1辆车,来了5辆车) R480=6(15)

  • 动作报酬期望: R s a = ∑ s ′ ∈ S P s s ′ a R s s ′ a R^a_s=\sum_{s'\in S}P^a_{ss'}R^a_{ss'} Rsa=sSPssaRssa.举例则 R s = 4 a = 0 = 0.0 5 s ′ = 1 ∗ 3 + 0. 1 s ′ = 2 ∗ 2 + 0. 2 s ′ = 3 ∗ 3 + 0. 1 s ′ = 5 ∗ 3 + 0. 1 s ′ = 6 ∗ 4 + 0.0 5 s ′ = 7 ∗ 3 + 0.0 5 s ′ = 8 ∗ 6 + 0.0 5 s ′ = 9 ∗ 5 = 0.15 + 0.2 + 0.6 + 0.3 + 0.4 + 0.15 + 0.3 + 0.45 = 2.55 \begin{aligned}&R_{s=4}^{a=0}\\&=0.05_{s'=1}*3+0.1_{s'=2}*2+0.2_{s'=3}*3+0.1_{s'=5}*3+0.1_{s'=6}*4+0.05_{s'=7}*3+0.05_{s'=8}*6+0.05_{s'=9}*5\\&=0.15+0.2+0.6+0.3+0.4+0.15+0.3+0.45\\&=2.55\end{aligned} Rs=4a=0=0.05s=13+0.1s=22+0.2s=33+0.1s=53+0.1s=64+0.05s=73+0.05s=86+0.05s=95=0.15+0.2+0.6+0.3+0.4+0.15+0.3+0.45=2.55

    R s = 4 a = 1 = 0.05 ∗ 1 + 0.1 ∗ 4 + 0.1 ∗ 3 + 0.1 ∗ 4 + 0.1 ∗ 5 + 0.1 ∗ 6 + 0.1 ∗ 7 + 0.1 ∗ 8 + 0.05 ∗ 9 = 4.2 \begin{aligned} &R^{a=1}_{s=4}\\&=0.05*1+0.1*4+0.1*3+0.1*4+0.1*5+0.1*6+0.1*7+0.1*8+0.05*9=4.2\end{aligned} Rs=4a=1=0.051+0.14+0.13+0.14+0.15+0.16+0.17+0.18+0.059=4.2

    R s = 4 a = 2 = R s = 4 a = − 1 = R s = 4 a = − 2 = 4.2 R^{a=2}_{s=4}=R^{a=-1}_{s=4}=R^{a=-2}_{s=4}=4.2 Rs=4a=2=Rs=4a=1=Rs=4a=2=4.2

  • 策略报酬期望: R s π = ∑ a ∈ A π ( a ∣ s ) R s a R_s^{\pi}=\sum_{a\in A}\pi(a|s)R_s^a Rsπ=aAπ(as)Rsa

    R s = 4 π = π ( a = − 1 ∣ 4 ) ∗ R 4 − 1 + π ( a = − 2 ∣ 4 ) R 4 − 2 + π ( 0 ∣ 4 ) ∗ R 4 0 + π ( 1 ∣ 4 ) ∗ R 4 1 + π ( 2 ∣ 4 ) R 4 2 = 0. 4 ( a = − 1 ) ∗ 4.2 + 0. 4 ( a = − 2 ) ∗ 4.2 + 0. 2 ( a = 0 ) ∗ 2.55 + 0 + 0 = 3.87 \begin{aligned}R^{\pi}_{s=4}&=\pi(a=-1|4)*R^{-1}_4+\pi(a=-2|4)R^{-2}_4+\pi(0|4)*R^0_4+\pi(1|4)*R^1_4+\pi(2|4)R^2_4\\&=0.4_{(a=-1)}*4.2+0.4_{(a=-2)}*4.2+0.2_{(a=0)}*2.55+0+0=3.87\end{aligned} Rs=4π=π(a=14)R41+π(a=24)R42+π(04)R40+π(14)R41+π(24)R42=0.4(a=1)4.2+0.4(a=2)4.2+0.2(a=0)2.55+0+0=3.87

1.3 两个价值函数

1.3.1 状态价值函数(或累积回报函数)

是对当前状态的s=4的价值判断。

公式为: V π ( s ) = ∑ a ∈ A π ( a ∣ s ) { R s s ′ a + γ ∑ s ′ ∈ S V π ( s ′ ) } (1) V^{\pi}(s)=\sum_{a\in A}\pi(a|s)\{R^a_{ss'}+\gamma\sum_{s'\in S} V^{\pi}(s')\} \tag{1} Vπ(s)=aAπ(as){Rssa+γsSVπ(s)}(1)

举例为:

V π ( s = 4 ) = s u m a ∈ { − 2 , − 1 , 0 , 1 , 2 } π ( a ∣ s ) V^{\pi}(s=4)=sum_{a\in \{-2,-1,0,1,2\}}\pi(a|s) Vπ(s=4)=suma{2,1,0,1,2}π(as) { R 4 a + γ ∑ s ′ ∈ { 0 , . . . , 13 } P 4 s ′ a V π ( s ′ ) } \{R^a_4+\gamma \sum_{s'\in \{0,...,13 \}}P^a_{4s'}V^{\pi}(s') \} {R4a+γs{0,...,13}P4saVπ(s)}​​

= 0.2 ∗ =0.2* =0.2​​​​​​​​​​​​ ( R 4 0 + γ × (R^0_4+\gamma \times (R40+γ× [ 0.05 × V π ( 1 ) + 0.1 × V π ( 2 ) + 0.3 × V π ( 30 ) 0.1 × V π ( 5 ) + 0.1 × V π ( 6 ) + 0.05 × ( V π ( 7 ) ) + V π ( 8 ) + V π ( 9 ) ] [0.05\times V^{\pi}(1)+0.1\times V^{\pi}(2)+0.3\times V^{\pi}(30)0.1\times V^{\pi}(5)+0.1\times V^{\pi}(6)+0.05\times (V^{\pi}(7))+V^{\pi}(8)+V^{\pi}(9)] [0.05×Vπ(1)+0.1×Vπ(2)+0.3×Vπ(30)0.1×Vπ(5)+0.1×Vπ(6)+0.05×(Vπ(7))+Vπ(8)+Vπ(9)]​​​​​​​​​​​​​)

+ 0.4 ∗ +0.4* +0.4​​​​​ ( R 4 − 2 + γ × (R^{-2}_4+\gamma \times (R42+γ×​​

[ 0.05 × V π ( 3 ) + 0.1 × ( V π ( 4 ) + V π ( 5 ) + V π ( 6 ) + V π ( 7 ) + V π ( 8 ) + V π ( 9 ) + V π ( 10 ) + V π ( 11 ) + V π ( 12 ) ) + 0.05 × V π ( 13 ) ] [0.05\times V^{\pi}(3)+0.1\times (V^{\pi}(4)+V^{\pi}(5)+V^{\pi}(6)+V^{\pi}(7)+V^{\pi}(8)+V^{\pi}(9)+V^{\pi}(10)+V^{\pi}(11)+V^{\pi}(12))+0.05\times V^{\pi}(13) ] [0.05×Vπ(3)+0.1×(Vπ(4)+Vπ(5)+Vπ(6)+Vπ(7)+Vπ(8)+Vπ(9)+Vπ(10)+Vπ(11)+Vπ(12))+0.05×Vπ(13)]​​
+ 0.4 ∗ +0.4* +0.4​​ ( R 4 − 1 + γ × (R^{-1}_4+\gamma \times (R41+γ×​​
[ 0.05 × V π ( 3 ) + 0.1 × ( V π ( 4 ) + V π ( 5 ) + V π ( 6 ) + V π ( 7 ) + V π ( 8 ) + V π ( 9 ) + V π ( 10 ) + V π ( 11 ) + V π ( 12 ) ) + 0.05 × V π ( 13 ) ] [0.05\times V^{\pi}(3)+0.1\times (V^{\pi}(4)+V^{\pi}(5)+V^{\pi}(6)+V^{\pi}(7)+V^{\pi}(8)+V^{\pi}(9)+V^{\pi}(10)+V^{\pi}(11)+V^{\pi}(12))+0.05\times V^{\pi}(13) ] [0.05×Vπ(3)+0.1×(Vπ(4)+Vπ(5)+Vπ(6)+Vπ(7)+Vπ(8)+Vπ(9)+Vπ(10)+Vπ(11)+Vπ(12))+0.05×Vπ(13)]

1.3.2 Q函数(状态动作函数)

对当前状态-动作的价值判断

公式为: Q π ( s , a ) = R S a + γ ∑ s ′ ∈ S P s s ′ a ∑ a ′ ∈ S π ( a ∣ s ) Q π ( s ′ , a ′ ) (2) Q^{\pi}(s,a)=R^a_S+\gamma\sum_{s'\in S}P^a_{ss'}\sum_{a'\in S}\pi(a|s)Q^{\pi}(s',a')\tag{2} Qπ(s,a)=RSa+γsSPssaaSπ(as)Qπ(s,a)(2)
举例略()

1.3.3 Q函数与值函数的关系

V π ( s ) = ∑ a ∈ A π ( a ∣ s ) Q π ( s , a ) V^{\pi}(s)=\sum_{a\in A}\pi(a|s)Q^{\pi}(s,a) Vπ(s)=aAπ(as)Qπ(s,a)

Q π ( s , a ) = R s a + γ ∑ s ′ ∈ S P s s ′ a V π ( s ′ ) Q^{\pi}(s,a)=R^a_s+\gamma \sum_{s'\in S}P^a_{ss'}V^{\pi}(s') Qπ(s,a)=Rsa+γsSPssaVπ(s)

1.4最优价值函数

  1. 最优状态价值函数:是所有策略下产生的众多状态价值函数中的最大者,即: V ∗ ( s ) = max ⁡ π V π ( s ) V^*(s)=\max_{\pi}V^{\pi}(s) V(s)=maxπVπ(s)

  2. 最优董总价值函数:是所有策略下产生的众多动作状态价值函数中的最大者,即: Q ∗ ( s , a ) = max ⁡ π Q π ( s , a ) Q^*(s,a)=\max_{\pi} Q^{\pi}(s,a) Q(s,a)=maxπQπ(s,a)

  3. 最优策略,基于动作价值函数可以定义胃:

    π ∗ ( a ∣ s ) = { 1 , i f a = arg ⁡ m a x a ∈ A Q ∗ ( s , a ) 0 , e l s e \pi^*(a|s)=\begin{cases}1,& if \quad a=\arg max_{a\in A}Q^*(s,a)\\0,&else\end{cases} π(as)={1,0,ifa=argmaxaAQ(s,a)else

  4. 只要我们找到了最大的状态价值函数或者动作价值函数,那么对应的策略 π ∗ \pi^* π​就是我们强化学习问题的解。

1.5 Bellman最优方程

可以根据最优价值函数的定义,可以推到其bellman方程形式

  1. 最优状态价值函数 : V ∗ ( s ) = max ⁡ π V π ( s ) V^*(s)=\max_{\pi} V^{\pi}(s) V(s)=maxπVπ(s)

    V ∗ ( s ) = max ⁡ π V π ( s ) 对 不 同 策 略 取 的 V 值 取 最 大 = max ⁡ π ( ∑ a ∈ A π ( a ∣ s ) Q π ( s , a ) ) 代 入 V 值 与 Q 值 得 关 系 = max ⁡ π max ⁡ a ∈ A Q π ( s , a ) 上 一 行 是 动 作 状 态 得 期 望 , 此 行 是 动 作 状 态 得 最 值 = max ⁡ a ∈ A Q ∗ ( s , a ) 调 换 两 个 m a x , 逆 用 最 优 状 态 动 作 值 函 数 \begin{aligned}V^*(s) &=\max_{\pi} V^{\pi}(s) \quad &对不同策略取的V值取最大\\&=\max_{\pi}(\sum_{a\in A}\pi(a|s)Q^{\pi}(s,a)) &代入V值与Q值得关系\\&=\max_{\pi} \max_{a\in A}Q^{\pi}(s,a) &上一行是动作状态得期望,此行是动作状态得最值\\&=\max_{a\in A}Q^*(s,a) &调换两个max,逆用最优状态动作值函数 \end{aligned} V(s)=πmaxVπ(s)=πmax(aAπ(as)Qπ(s,a))=πmaxaAmaxQπ(s,a)=aAmaxQ(s,a)VVQmax,

    1.1 π ( a ∣ s ) ∈ [ 0 , 1 ] , 且 ∑ a ∈ A π ( a ∣ s ) = 1 \pi(a|s)\in [0,1],且\sum_{a\in A}\pi (a|s)=1 π(as)[0,1],aAπ(as)=1

    1.2 ∑ a ∈ A π ( a ∣ s ) Q π ( s , a ) \sum_{a\in A}\pi(a|s)Q^{\pi}(s,a) aAπ(as)Qπ(s,a)得最大值:

    1. 假设在状态s下执行动作 a ∗ a^* a​时, Q π ( s , a ∗ ) Q_{\pi}(s,a^*) Qπ(s,a)​得值最大, Q π ( s , a ∗ ) ≥ Q π ( s , a ) , a ∈ A Q_{\pi}(s,a^*)\geq Q_{\pi}(s,a) ,a\in A Qπ(s,a)Qπ(s,a),aA
  2. 最优行为价值函数: Q ∗ ( s , a ) = max ⁡ π Q π ( s , a ) Q^*(s,a)=\max_{\pi} Q^{\pi}(s,a) Q(s,a)=maxπQπ(s,a)
    Q ∗ ( s , a ) = max ⁡ π Q π ( s , a ) 对 不 同 策 略 固 定 得 a 取 Q 最 值 = max ⁡ π ( R s s ′ a + γ ∑ s ′ ∈ S P s s ′ a V π ( s ′ ) ) 带 入 Q 值 与 V 值 得 关 系 = R s a + γ ∑ s ′ ∈ S P s s ′ a V ∗ ( s ′ ) m a x 进 去 后 , 逆 用 最 优 状 态 值 函 数 \begin{aligned} Q^*(s,a)&=\max_{\pi} Q^{\pi}(s,a) \quad & 对不同策略固定得a取Q最值\\&=\max_{\pi}(R^a_{ss'}+\gamma \sum_{s'\in S}P^a_{ss'}V^{\pi}(s')) &带入Q值与V值得关系\\&=R^a_s+\gamma \sum_{s'\in S}P^a_{ss'}V^*(s') &max进去后,逆用最优状态值函数 \end{aligned} Q(s,a)=πmaxQπ(s,a)=πmax(Rssa+γsSPssaVπ(s))=Rsa+γsSPssaV(s)aQQVmax
    3. Q ∗ ( s , a ) 和 V ∗ ( s ) Q^*(s,a)和V^*(s) Q(s,a)V(s)的递推表达式为:

V ∗ ( s ) = max ⁡ a ∈ A ( R S a + γ ∑ s ′ ∈ S P s s ′ a V ∗ ( s ′ ) ) V^*(s)=\max_{a\in A}(R^a_S+\gamma \sum_{s'\in S}P^a_{ss'}V*(s')) V(s)=aAmax(RSa+γsSPssaV(s))
Q ∗ ( s , a ) = R s a + γ ∑ s ′ ∈ S P s s ′ a max ⁡ a ∈ A Q ∗ ( s ′ , a ′ ) Q^*(s,a)=R^a_s+\gamma \sum_{s'\in S}P^a_{ss'}\max_{a\in A}Q^*(s',a') Q(s,a)=Rsa+γsSPssaaAmaxQ(s,a)

二、 常用案例迭代

这里时一个常用的MDP的案例。figq为原始案例图以及初值表示;fig2表示计算后的结果
在这里插入图片描述
注意:这里认为当下的策略是最优策略,没有对策略进行取最大值的步骤。此外,为方便计算折扣因子 γ = 1 \gamma=1 γ=1
我们根据最优Q*的迭代说明一下
Q ∗ ( s , a ) = max ⁡ π Q π ( s , a ) Q^*(s,a)=\max_{\pi}Q^{\pi}(s,a) Q(s,a)=maxπQπ(s,a), V ∗ ( s ) = max ⁡ π V π ( s ) \quad V^*(s)=\max_{\pi}V^{\pi}(s) V(s)=maxπVπ(s)

2.1 迭代公式

  • Q ∗ ( s , a ) = R s a + γ ∑ s ′ ∈ S P s s ′ a max ⁡ a ∈ A Q ∗ ( s ′ , a ′ ) Q^*(s,a)=R^a_s+\gamma \sum_{s'\in S}P^a_{ss'}\max_{a\in A}Q^*(s',a') Q(s,a)=Rsa+γsSPssamaxaAQ(s,a)
  • V ∗ ( s ) = max ⁡ a ∈ A ( R S a + γ ∑ s ′ ∈ S P s s ′ a V ∗ ( s ′ ) ) V^*(s)=\max_{a\in A}(R^a_S+\gamma \sum_{s'\in S}P^a_{ss'}V*(s')) V(s)=maxaA(RSa+γsSPssaV(s))
  • ∑ s ′ \sum_{s'} s ,s‘是对当前状态s和动作a后产生的下一状态,任意状态都有 P s s ′ a P^a_{ss'} Pssa的概率发生,所以要求和
  • R s a R^a_{s} Rsa是当下的动作的即时报酬
  • γ \gamma γ是下一状态动作的折扣因子
  • max ⁡ a ′ Q ∗ ( s ′ , a ′ ) \max_{a'}Q^*(s',a') maxaQ(s,a):对未来状态s’,进行采取动作a’的最大动作-状态的报酬(值函数)

2.2 Q ∗ ( s , a ) Q^*(s,a) Q(s,a)迭代过程:

  1. 方块是终点,所以迭代的初始值函数为0
    • Q ∗ ( S 4 , s t u d y ) = 10 , Q ∗ ( S 3 , s l e e p ) = 0 Q^*(S_4,study)=10,\quad Q^*(S_3,sleep)=0 Q(S4,study)=10,Q(S3,sleep)=0
    • Q ∗ ( S 4 , p u b ) = 1 + 0.2 × max ⁡ a ′ Q ∗ ( S 2 , a ′ ) + 0.4 × max ⁡ a ′ Q ∗ ( S 3 , a ′ ) + 0.4 × max ⁡ a ′ Q ∗ ( S 4 , a ′ ) Q^*(S_4,pub)=1+0.2 \times \max_{a'}Q^*(S_2,a')+0.4\times\max_{a'} Q^*(S_3,a')+0.4\times\max_{a'}Q^* (S_4,a') Q(S4,pub)=1+0.2×maxaQ(S2,a)+0.4×maxaQ(S3,a)+0.4×maxaQ(S4,a)
      max ⁡ a ′ Q ∗ ( S 4 , a ′ ) \max_{a'} Q^*(S_4,a') maxaQ(S4,a),假设已知为最大值。
    • max ⁡ Q ∗ ( S 4 , a ′ ) \max Q^*(S_4,a') maxQ(S4,a) = 10 =10 =10
    • Q ∗ ( S 3 , s t u d y ) = − 2 + Q^*(S_3,study)=-2+ Q(S3,study)=2+ max ⁡ a ′ Q ∗ ( S 4 , a ′ ) \max_{a'}Q^*(S_4,a') maxaQ(S4,a) = − 2 + 10 = 8 =-2+10=8 =2+10=8
    • max ⁡ Q ∗ ( S 3 , a ′ ) = m a x ( 8 , 0 ) = 8 \max Q^*(S_3,a')=max(8,0)=8 maxQ(S3,a)=max(8,0)=8
    • Q ∗ ( S 2 , s t u d y ) = − 2 + Q^*(S_2,study)=-2+ Q(S2,study)=2+ max ⁡ a ′ ( S 3 , a ′ ) \max_{a'}(S_3,a') maxa(S3,a) = − 2 + 8 = 6 =-2+8=6 =2+8=6
    • Q ∗ ( S 3 , p u b ) = − 1 + max ⁡ a ′ Q ∗ ( S 1 , a ′ ) Q^*(S_3,pub)=-1+\max_{a'}Q^*(S_1,a') Q(S3,pub)=1+maxaQ(S1,a)
      max ⁡ a ′ Q ∗ ( S 2 , a ′ ) \max_{a'}Q^*(S_2,a') maxaQ(S2,a)假设已知为最大值。
    • max ⁡ Q ∗ ( S 2 , a ′ ) \max Q^*(S_2,a') maxQ(S2,a) = 6 =6 =6
    • Q ∗ ( S 1 , F a b ) = − 1 + max ⁡ a ′ ( S 1 , a ′ ) Q^*(S_1,Fab)=-1+\max_{a'}(S_1,a') Q(S1,Fab)=1+maxa(S1,a)
    • Q ∗ ( S 1 , q u i t ) = 0 + Q^*(S_1,quit)=0+ Q(S1,quit)=0+ max ⁡ a ′ ( S 2 , a ′ ) \max_{a'}(S_2,a') maxa(S2,a) = 6 =6 =6
      max ⁡ a ′ Q ∗ ( S 1 , a ′ ) \max_{a'}Q^*(S_1,a') maxaQ(S1,a)假设已知为最大值。
    • max ⁡ Q ∗ ( S 1 , a ′ ) \max Q^*(S_1,a') maxQ(S1,a) = 6 =6 =6
  2. 倒退逐步验证每一个假设
    • Q ∗ ( S 1 , F a b ) = − 1 + max ⁡ a ′ ( S 1 , a ′ ) = 5 < max ⁡ Q ∗ ( S 1 , a ′ ) = 6 Q^*(S_1,Fab)=-1+\max_{a'}(S_1,a')=5<\max Q^*(S_1,a')=6 Q(S1,Fab)=1+maxa(S1,a)=5<maxQ(S1,a)=6,假设成立
    • Q ∗ ( S 3 , p u b ) = − 1 + max ⁡ a ′ Q ∗ ( S 1 , a ′ ) = 5 < max ⁡ Q ∗ ( S 3 , a ′ ) = 10 Q^*(S_3,pub)=-1+\max_{a'}Q^*(S_1,a')=5<\max Q^*(S_3,a')=10 Q(S3,pub)=1+maxaQ(S1,a)=5<maxQ(S3,a)=10,假设成立
    • Q ∗ ( S 4 , p u b ) = 1 + 0.2 × max ⁡ a ′ Q ∗ ( S 2 , a ′ ) + 0.4 × max ⁡ a ′ Q ∗ ( S 3 , a ′ ) + 0.4 × max ⁡ a ′ Q ∗ ( S 4 , a ′ ) = 1 + 0.2 × 6 + 0.4 × 8 + 0.4 × 10 = 9.4 < max ⁡ Q ∗ ( S 4 , a ′ ) = 10 \begin{aligned}Q^*(S_4,pub)&=1+0.2 \times \max_{a'}Q^*(S_2,a')+0.4\times\max_{a'} Q^*(S_3,a')+0.4\times\max_{a'}Q^* (S_4,a')\\&=1+0.2\times 6+0.4\times 8+0.4 \times 10\\&=9.4< \max Q^*(S_4,a')=10 \end{aligned} Q(S4,pub)=1+0.2×amaxQ(S2,a)+0.4×amaxQ(S3,a)+0.4×amaxQ(S4,a)=1+0.2×6+0.4×8+0.4×10=9.4<maxQ(S4,a)=10,假设成立

2.3 V ∗ ( s ) V^*(s) V(s)的迭代过程:

  1. 方块是终点,所以迭代的初始值函数为0
    • V ∗ ( e n d ) = 0 V^*(end)=0 V(end)=0
    • V ∗ ( S 4 ) = max ⁡ { V^*(S4)=\max\{ V(S4)=max{ 10 + 0 10+0\quad 10+0, 1 + 0.2 × V ∗ ( S 2 ) + 0.4 × V ∗ ( S 3 ) + 0.4 × V ∗ ( S 4 ) } 1+0.2\times V^*(S_2)+0.4\times V^*(S_3)+0.4\times V^*(S_4) \} 1+0.2×V(S2)+0.4×V(S3)+0.4×V(S4)}=10(假设已知为最大值。)
    • V ∗ ( S 3 ) = max ⁡ { V*(S_3)=\max\{ V(S3)=max{ 0 + 0 0+0 \quad 0+0, − 2 + V ∗ ( S 4 ) } -2+V^*(S_4)\} 2+V(S4)}=8
    • V ∗ ( S 2 ) = max ⁡ { V^*(S_2)=\max\{ V(S2)=max{ − 1 + V ∗ ( S 1 ) -1+V^*(S_1) \quad 1+V(S1), − 2 + V ∗ ( S 3 ) } -2+V^*(S_3)\} 2+V(S3)}$=6(假设已知为最大值。)
    • V ∗ ( S 1 ) = max ⁡ { V^*(S_1)=\max\{ V(S1)=max{-1+V^*(S_1)\quad$, 0 + V ∗ ( S 2 ) 0+V^*(S_2) 0+V(S2)}=6(假设已知为最大值。)
  2. 经验证,三个假设都成立。

三、文字概念

强化学习是通过从交互学习来实现目标的计算方法。其交互过程是,在每一步t中,智能体与环境进行交互:

  • 智能体(agent):获得观察O_t,获得奖励R_t,执行动作A_t;
  • 环境:获得行动A_t,给出观察O_{t+1},给出奖励R_{t+1};

以上这种交互的一个完整的过程,我们可以称之为历史(History),这是一串关于观察、奖励、行动的序列,是一串一直到时间t为的所有观测变量。

  • 状态(State):是一种用于确定接下来会发生的事情(动作A、奖励R、观测O),状态是关于历史的函数。状态通常是整个环境的,所观察到的状态可以视为所有状态的一部分,仅仅是智能体agent可以观察到的那一部分。

  • 策略(Policy):是学习智能体在特定时间下的状态的行为方式。即从状态到行为的映射。策略可以分为两种:确定性策略(函数表示)和随机策略(条件概率表示)。

  • 奖励(Reward):一种度量,立即感知到什么是好的,一般情况下是一个标量。

  • 价值函数(Value function):长远来看(long-term),什么是好的。价值函数是对于未来累计奖励的预测,用于评估给定策略下,状态的好坏。

  • 环境的模型(Model):用于模拟环境的行为,预测下一个状态,预测下一个立即奖励(reward)。

3.1 策略与状态转移方程的区别:

(1)策略,是在状态s时,可能执行不同的动作a的各自的概率,是一个n*m的矩阵(n个状态,m个动作);

(2)状态转移方程,是在状态s下,执行一个确定的动作a后,转移到各个状态s’的概率,是一个nnm的张量(n个状态,m个动作)

3.2强化学习智能体agent的分类

强化学习大体可以分为两类:
(1)model-based RL(基于模型的强化学习):模型可以被环境所知道,agent可以直接利用模型执行下一步的动作,而无需与实际环境进行交互学习。
例如:围棋、迷宫、象棋等这类规则明确,且可以枚举下一个状态的所有可能(比如象棋黑方走了一步后,可以列举此时红方可能要走的棋子和要走的方式)
(2)model_free RL(模型无关的强化学习):真正意义上的强化学习,环境是黑箱,比如Atari游戏、王者荣耀游戏,其需要大量的采样。

3.3 强化学习的另外一种分类方式:

(1)基于价值:没有策略(隐含)、价值函数。通过估计价值,来推导出最优策略。
(2)基于策略:策略、没有价值函数。与基于价值的关系相反。
(3)Actor-Critic:策略、价值函数相辅相成

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值