马尔可夫性
- 序贯决策:智能体状态会随时间发生转移
- 马尔可夫性:未来状态只依赖于当前状态。这里涉及到对“状态”的定义。
P [ s t + 1 ∣ s 1 , ⋯ , s t ] = P [ s t + 1 ∣ s t ] \mathbb P[s_{t+1}|s_1,\cdots,s_t]=\mathbb P[s_{t+1}|s_t] P[st+1∣s1,⋯,st]=P[st+1∣st] - 部分可观测:智能体不能获得环境的全部信息s,只能获得观测量o
s t ≠ o t s_t\neq o_t st=ot- 部分情况可以通过观测量推测出状态,从而将部分可观测问题转化成全观测问题
- 状态转移概率 P s s ′ = P [ s t + 1 = s ′ ∣ s t = s ] \mathcal P_{ss'}=\mathbb P[s_{t+1}=s'|s_t=s] Pss′=P[st+1=s′∣st=s]
- 状态转移矩阵:包含从所有状态s到所有状态s’的转移概率。行元素之和为1
马尔可夫过程MP
一个无记忆的随机过程,一组具有马尔可夫性的状态,用 < S , P > <\mathcal S,\mathcal P> <S,P>表示。
马尔可夫奖励过程MRP
马尔可夫奖励过程由 < S , P , R , γ > <\mathcal S,\mathcal P,\mathcal R,\gamma> <S,P,R,γ>组成
回报和价值
回报是一条轨迹的折扣累加奖励
G
t
=
∑
i
=
0
∞
γ
i
r
t
+
i
+
1
G_t=\sum_{i=0}^\infty \gamma^ir_{t+i+1}
Gt=i=0∑∞γirt+i+1
状态s的价值是其所有轨迹的期望
V
(
s
)
=
E
[
G
t
∣
s
t
=
s
]
V(s)=\mathbb E[G_t|s_t=s]
V(s)=E[Gt∣st=s]
折扣因子的意义
- 方便调整奖励的重要性
- 在连续MDPs问题中可以避免无穷回报
- 更重视近期奖励,与自然界相仿
- 在有终止状态的问题中可以采用无折扣的马尔可夫奖励过程
贝尔曼方程及其变形
V
(
s
)
=
E
[
G
t
∣
s
t
=
s
]
=
E
[
r
t
+
1
+
γ
G
t
+
1
∣
s
t
=
s
]
=
E
[
r
t
+
1
+
γ
V
(
s
t
+
1
)
∣
s
t
=
s
]
=
R
(
s
)
+
γ
∑
s
′
∈
S
P
s
s
′
V
(
s
′
)
\begin{aligned} V(s)&=\mathbb E[G_t|s_t=s]\\ &=\mathbb E[r_{t+1}+\gamma G_{t+1}|s_t=s]\\ &=\mathbb E[r_{t+1}+\gamma V(s_{t+1})|s_t=s]\\ &=\mathcal R(s)+\gamma\sum_{s'\in S}\mathcal P_{ss'}V(s') \end{aligned}
V(s)=E[Gt∣st=s]=E[rt+1+γGt+1∣st=s]=E[rt+1+γV(st+1)∣st=s]=R(s)+γs′∈S∑Pss′V(s′)
贝尔曼方程的矩阵形式及其变形
V
=
R
+
γ
P
V
(
I
−
γ
P
)
V
=
R
V
=
(
I
−
γ
P
)
−
1
R
\begin{aligned}\mathcal V&=\mathcal R+\gamma\mathcal{PV}\\ (I-\gamma\mathcal P)\mathcal V&=\mathcal R\\ \mathcal V&=(I-\gamma\mathcal P)^{-1}\mathcal R \end{aligned}
V(I−γP)VV=R+γPV=R=(I−γP)−1R
由于需要求状态转移矩阵的逆,因此需要
O
(
n
3
)
O(n^3)
O(n3)的计算复杂度
马尔可夫决策过程MDP
马尔可夫决策过程 M = < S , A , P , R , γ > \mathcal M=<\mathcal S,\mathcal A,\mathcal P,\mathcal R,\gamma> M=<S,A,P,R,γ>
- P s s ′ a = P [ s ′ = s t + 1 ∣ s t = s , a t = a ] \mathcal P_{ss'}^a=\mathbb P[s'=s_{t+1}|s_t=s,a_t=a] Pss′a=P[s′=st+1∣st=s,at=a]
- R s a = E [ r t + 1 ∣ s t = s , a t = a ] \mathcal R_s^a=\mathbb E[r_{t+1}|s_t=s,a_t=a] Rsa=E[rt+1∣st=s,at=a]
策略
策略是状态到动作概率分布的映射。
π
(
a
∣
s
)
=
P
[
a
t
=
a
∣
s
t
=
s
]
\pi(a|s)=\mathbb P[a_t=a|s_t=s]
π(a∣s)=P[at=a∣st=s]
π
(
s
)
\pi(s)
π(s)在不确定策略中是状态s下选取各动作的概率分布,在确定性策略中则是动作a
价值
状态价值V是从状态s出发在策略
π
\pi
π指导下的期望回报
V
π
(
s
)
=
E
[
G
t
∣
s
t
=
s
]
V_\pi(s)=\mathbb E[G_t|s_t=s]
Vπ(s)=E[Gt∣st=s]
动作价值Q是从状态s出发,先采取动作a,然后在策略
π
\pi
π指导下的期望回报
Q
π
(
s
,
a
)
=
E
[
G
t
∣
s
t
=
s
,
a
t
=
a
]
Q_\pi(s,a)=\mathbb E[G_t|s_t=s,a_t=a]
Qπ(s,a)=E[Gt∣st=s,at=a]
贝尔曼期望方程及其推导
V
π
(
s
)
=
∑
a
∈
A
π
(
a
∣
s
)
Q
π
(
s
,
a
)
Q
π
(
s
,
a
)
=
R
s
a
+
γ
∑
s
′
∈
S
P
s
s
′
a
V
π
(
s
′
)
V
π
(
s
)
=
∑
a
∈
A
π
(
a
∣
s
)
(
R
s
a
+
γ
∑
s
′
∈
S
P
s
s
′
a
V
π
(
s
′
)
)
Q
π
(
s
,
a
)
=
R
s
a
+
γ
∑
s
′
∈
S
P
s
s
′
a
∑
a
′
∈
A
π
(
a
′
∣
s
′
)
Q
π
(
s
′
,
a
′
)
V_\pi(s)=\sum_{a\in \mathcal A}\pi(a|s)Q_\pi(s,a)\\ Q_\pi(s,a)=\mathcal R_s^a+\gamma\sum_{s'\in \mathcal S}\mathcal P_{ss'}^aV_\pi(s')\\ V_\pi(s)=\sum_{a\in \mathcal A}\pi(a|s)\big(\mathcal R_s^a+\gamma\sum_{s'\in \mathcal S}\mathcal P_{ss'}^aV_\pi(s')\big)\\ Q_\pi(s,a)=\mathcal R_s^a+\gamma\sum_{s'\in \mathcal S}\mathcal P_{ss'}^a\sum_{a'\in \mathcal A}\pi(a'|s')Q_\pi(s',a')
Vπ(s)=a∈A∑π(a∣s)Qπ(s,a)Qπ(s,a)=Rsa+γs′∈S∑Pss′aVπ(s′)Vπ(s)=a∈A∑π(a∣s)(Rsa+γs′∈S∑Pss′aVπ(s′))Qπ(s,a)=Rsa+γs′∈S∑Pss′aa′∈A∑π(a′∣s′)Qπ(s′,a′)
矩阵形式
V
π
=
R
π
+
γ
P
π
V
π
V
π
=
(
I
−
γ
P
π
)
−
1
R
π
\mathcal V_\pi=\mathcal R^\pi+\gamma\mathcal P^\pi\mathcal V_\pi\\ \mathcal V_\pi=(I-\gamma\mathcal P^\pi)^{-1}\mathcal R^\pi
Vπ=Rπ+γPπVπVπ=(I−γPπ)−1Rπ
最优价值
V ∗ = max π V π ( s ) Q ∗ = max π Q π ( s , a ) V_*=\max_\pi V_\pi(s)\\ Q_*=\max_\pi Q_\pi(s,a) V∗=πmaxVπ(s)Q∗=πmaxQπ(s,a)
最优策略
π ≥ π ′ if V π ( s ) ≥ V π ′ ( s ) , ∀ s π ∗ ≥ π , ∀ π \pi\geq\pi'\text{ if }V_\pi(s)\geq V_\pi'(s),\forall s\\ \pi_*\geq \pi,\forall \pi π≥π′ if Vπ(s)≥Vπ′(s),∀sπ∗≥π,∀π
最优化原理
对于最优策略而言,不论初始状态和初始决策是什么,余下的决策仍是余下问题的最优策略。
V
∗
(
s
)
=
max
a
(
R
s
a
+
γ
∑
s
′
∈
S
P
s
s
′
a
V
∗
(
s
′
)
)
Q
∗
(
s
,
a
)
=
R
s
a
+
γ
∑
s
′
∈
S
P
s
s
′
a
V
∗
(
s
′
)
V
∗
(
s
)
=
max
a
Q
∗
(
s
,
a
)
Q
∗
(
s
,
a
)
=
R
s
a
+
γ
∑
s
′
∈
S
P
s
s
′
a
max
a
′
π
(
a
′
∣
s
′
)
Q
∗
(
s
′
,
a
′
)
V_*(s)=\max_a\big(\mathcal R_s^a+\gamma\sum_{s'\in \mathcal S}\mathcal P_{ss'}^aV_*(s')\big)\\ Q_*(s,a)=\mathcal R_s^a+\gamma\sum_{s'\in \mathcal S}\mathcal P_{ss'}^aV_*(s')\\ V_*(s)=\max_aQ_*(s,a)\\ Q_*(s,a)=\mathcal R_s^a+\gamma\sum_{s'\in \mathcal S}\mathcal P_{ss'}^a\max_{a'}\pi(a'|s')Q_*(s',a')
V∗(s)=amax(Rsa+γs′∈S∑Pss′aV∗(s′))Q∗(s,a)=Rsa+γs′∈S∑Pss′aV∗(s′)V∗(s)=amaxQ∗(s,a)Q∗(s,a)=Rsa+γs′∈S∑Pss′aa′maxπ(a′∣s′)Q∗(s′,a′)
寻找最优策略
π ∗ ( s ) = arg max a ( R s a + γ ∑ s ′ ∈ S P s s ′ a V ∗ ( s ′ ) ) π ∗ ( s ) = arg max a Q ∗ ( s , a ) \pi_*(s)=\argmax_a\big(\mathcal R_s^a+\gamma\sum_{s'\in \mathcal S}\mathcal P_{ss'}^aV_*(s')\big)\\ \pi_*(s)=\argmax_aQ_*(s,a) π∗(s)=aargmax(Rsa+γs′∈S∑Pss′aV∗(s′))π∗(s)=aargmaxQ∗(s,a)
模型的不同分类
- 状态空间是否连续
- 动作空间是否连续
- 确定性模型与非确定性模型
- 连续时间与离散时间
- 奖励与惩罚,最大化奖励,最小化惩罚
不同形式的回报
- 无限时域的累加奖励
G
(
s
0
)
=
∑
t
=
0
∞
γ
t
r
t
+
1
G(s_0)=\sum_{t=0}^\infty\gamma^tr_{t+1}
G(s0)=∑t=0∞γtrt+1
- 终止状态:轨迹结束,奖励也到此时刻为止
- 无限时域的平均奖励
G
(
s
0
)
=
lim
T
→
∞
1
T
∑
t
=
1
T
r
t
G(s_0)=\lim_{T\to \infty}\frac1T\sum^T_{t=1}r_t
G(s0)=limT→∞T1∑t=1Trt
- 不存在终止状态,但存在各态遍历
- 有限时域的累加奖励 G ( s 0 ) = ∑ t = 0 T − 1 γ t r t + 1 G(s_0)=\sum^{T-1}_{t=0}\gamma^tr_{t+1} G(s0)=∑t=0T−1γtrt+1
- 有限时域的平均奖励 G ( s 0 ) = 1 T ∑ t = 1 T r t G(s_0)=\frac1T\sum^T_{t=1}r_t G(s0)=T1∑t=1Trt