目录
折现动态规划
1. 介绍
- 无限期+折现因子 0 < α < 1 0<\alpha<1 0<α<1
- 可数状态空间: S S S
- 有限行动空间: A A A
- 有界奖励(reward): ∣ R ( i , a ) ∣ < B , ∀ i , a |R(i,a)|<B, \forall i, a ∣R(i,a)∣<B,∀i,a
- 平稳策略(stationary policy):1.确定性策略(非随机);2.在 t t t时刻的选择只与状态有关(与时间无关)
- 因为只与当前状态有关而与历史无关(转移概率和平稳策略),所以被称为马尔可夫决策过程(MDP)
- 总期望折现回报(total expected discounted return)
V π ( i ) = E [ ∑ n = 0 ∞ α n R ( x n , a n ) ∣ X 0 = i ] V_{\pi}(i)=\mathbb{E}\left[\sum_{n=0}^{\infty} \alpha^{n} R\left(x_{n}, a_{n}\right) \mid X_{0}=i\right] Vπ(i)=E[n=0∑∞αnR(xn,an)∣X0=i]
由reward有界得, ∣ V π ( i ) ∣ < B / ( 1 − α ) |V_\pi(i)|<B/(1-\alpha) ∣Vπ(i)∣<B/(1−α)
2. 最优方程与最优策略
令
V
(
i
)
=
sup
π
V
π
(
i
)
.
V(i)=\sup_\pi V_\pi(i).
V(i)=πsupVπ(i).
一个策略
π
∗
\pi^*
π∗被称为
α
\alpha
α最优(
α
\alpha
α-optimal),如果它满足
V
π
∗
(
i
)
=
V
(
i
)
for all
i
≥
0.
V_{\pi^*}(i)=V(i)\quad\text{for all}\quad i\ge0.
Vπ∗(i)=V(i)for alli≥0.
定理(最优方程)
V ( i ) = max a ∈ A [ R ( i , a ) + α ∑ j P i j ( a ) V ( j ) ] , i ≥ 0 V(i)=\max _{a \in A}\left[R(i, a)+\alpha \sum_{j} P_{i j}(a) V(j)\right], i\ge0 V(i)=a∈Amax[R(i,a)+αj∑Pij(a)V(j)],i≥0
- V g ( i ) = R ( i , g ( i ) ) + α ∑ j P i j ( g ( i ) ) V g ( j ) V_g(i)=R(i,g(i))+\alpha\sum_jP_{ij}(g(i))V_g(j) Vg(i)=R(i,g(i))+α∑jPij(g(i))Vg(j)是自然的,无需证明
定理(最优方程与最优策略)
设
f
f
f为平稳策略,当处于状态
i
i
i时,选择使最优方程的右侧最大化的行动,也即
R
(
i
,
f
(
i
)
)
+
α
∑
j
P
i
j
(
f
(
i
)
)
V
(
j
)
=
max
a
[
R
(
i
,
a
)
+
α
∑
j
P
i
j
(
a
)
V
(
j
)
]
,
∀
i
≥
0
,
R(i, f(i))+\alpha \sum_{j} P_{i j}(f(i)) V(j)=\max _{a}\left[R(i, a)+\alpha \sum_{j} P_{i j}(a) V(j)\right], \forall i\ge 0,
R(i,f(i))+αj∑Pij(f(i))V(j)=amax[R(i,a)+αj∑Pij(a)V(j)],∀i≥0,
则
f
f
f是
α
\alpha
α最优的策略,也即
V
f
(
i
)
=
V
(
i
)
for all
i
≥
0.
V_{f}(i)=V(i)\quad\text{for all}\quad i\ge0.
Vf(i)=V(i)for alli≥0.
- 这个定理告诉我们,若有最优方程,则可解出最优策略。
定理(唯一性)
V V V是最优方程的唯一有界解。
- 命题:对于任意平稳策略
g
g
g,
V
g
V_g
Vg是
V g ( i ) = R ( i , g ( i ) ) + α ∑ j P i j ( g ( i ) ) V g ( j ) V_{g}(i)=R(i, g(i))+\alpha \sum_{j} P_{i j}(g(i)) V_{g}(j) Vg(i)=R(i,g(i))+αj∑Pij(g(i))Vg(j)
的唯一解。
3. 最优策略的计算
3.1 值函数迭代(Value Iteration)
- MDP中最常用的迭代算法
- 思想:用有限期值函数近似无限期值函数
- 步骤:
- 令 V 0 ( i ) V_0(i) V0(i)为任意有界函数(对于有限状态空间,此条自然满足)
- 计算 V n ( i ) = max { R ( i , a ) + α ∑ j P i j ( a ) V n − 1 ( j ) } V_{n}(i)=\max \left\{R(i, a)+\alpha \sum_{j} P_{i j}(a) V_{n-1}(j)\right\} Vn(i)=max{R(i,a)+α∑jPij(a)Vn−1(j)},其中, R ( i , a ) R(i,a) R(i,a)一致有界, 0 < α < 1 0<\alpha<1 0<α<1
- 停止准则: ∥ V n ( i ) − V n − 1 ( i ) ∥ < δ \|V_n(i)-V_{n-1}(i)\|<\delta ∥Vn(i)−Vn−1(i)∥<δ
- 命题:
- 若 V 0 ≡ 0 V_0\equiv0 V0≡0,则 ∥ V ( i ) − V n ( i ) ∥ ≤ α n + 1 B 1 − α \|V(i)-V_n(i)\|\le\frac{\alpha^{n+1}B}{1-\alpha} ∥V(i)−Vn(i)∥≤1−ααn+1B
- 对于任意有界 V 0 V_0 V0,当 n n n趋于无穷时, V n ( i ) V_n(i) Vn(i)关于 i i i一致收敛于 V ( i ) V(i) V(i)
- 证明上述命题时需要注意有限期问题和无限期问题的区别:边界条件的影响
- 例子:机器替换模型
- 机器的状态为
i
i
i,行动为选择是否更换机器。如果更换,则需要花费
R
R
R,下一时刻状态为0(新机器);否则,下一时刻以
P
i
j
P_{ij}
Pij的概率转移至状态
j
j
j。对于状态
i
i
i,运营成本为
c
(
i
)
c(i)
c(i),
c
(
i
)
c(i)
c(i)关于
i
i
i递增。目标是最小化无限期的总期望折现成本。
V ( i ) = min { R + α V ( 0 ) , α ∑ j P i j V ( j ) } + c ( i ) V(i)=\min \left\{R+\alpha V(0), \alpha \sum_{j} P_{i j} V(j)\right\}+c(i) V(i)=min{R+αV(0),αj∑PijV(j)}+c(i) - 为了研究值函数关于 i i i的单调性,我们需要增加关于 P i j P_{ij} Pij的条件:对于每一 k k k, ∑ j = k ∞ P i j \sum_{j=k}^\infty P_{ij} ∑j=k∞Pij关于 i i i递增。设 T i T_i Ti为表示状态 i i i的下一状态的随机变量,则有 T i + 1 ≥ s t T i T_{i+1}\ge_{st}T_i Ti+1≥stTi。
- 随机顺序关系(stochastic order relations)
- 定义:我们称一随机变量 X X X随机地大于一随机变量 Y Y Y,如果对于任意 a a a都有 P ( X ≥ a ) ≥ P ( Y ≥ a ) P(X\ge a)\ge P(Y\ge a) P(X≥a)≥P(Y≥a)
- 引理:(a) 如果 X ≥ s t Y X\ge_{st} Y X≥stY,则 E [ X ] ≥ E [ Y ] E[X]\ge E[Y] E[X]≥E[Y]; (b) X ≥ s t Y X\ge_{st} Y X≥stY当且仅当对于所有递增函数 f f f都有 E [ f ( X ) ] ≥ E [ f ( Y ) ] E[f(X)]\ge E[f(Y)] E[f(X)]≥E[f(Y)]
- 考虑
n
n
n阶段问题
V n ( i ) = min { R + α V n − 1 ( 0 ) , α ∑ j P i j V n − 1 ( j ) } + c ( i ) V 0 ( i ) = c ( i ) V_n(i)=\min\{R+\alpha V_{n-1}(0),\alpha \sum_j P_{ij}V_{n-1}(j)\}+c(i)\\ V_0(i)=c(i) Vn(i)=min{R+αVn−1(0),αj∑PijVn−1(j)}+c(i)V0(i)=c(i)
用数学归纳法证明 V n ( i ) V_n(i) Vn(i)关于 i i i递增。显然 V 0 ( i ) V_0(i) V0(i)关于 i i i递增。设 V n − 1 ( i ) V_{n-1}(i) Vn−1(i)关于 i i i递增,则由 T i + 1 ≥ s t T i T_{i+1}\ge_{st}T_i Ti+1≥stTi有 ∑ j P i j V n − 1 ( j ) = E [ V n − 1 ( T i ) ] \sum_j P_{ij}V_{n-1}(j)=E[V_{n-1}(T_i)] ∑jPijVn−1(j)=E[Vn−1(Ti)]关于 i i i递增。 - 最优策略:因为 V ( i ) V(i) V(i)的结构为 min { A , B } \min\{A,B\} min{A,B},其中 A A A为常数, B B B关于 i i i单调递增,所以最优策略为当 i < i ˉ i<\bar{i} i<iˉ时不换,当 i ≥ i ˉ i\ge \bar{i} i≥iˉ时换。
- 机器的状态为
i
i
i,行动为选择是否更换机器。如果更换,则需要花费
R
R
R,下一时刻状态为0(新机器);否则,下一时刻以
P
i
j
P_{ij}
Pij的概率转移至状态
j
j
j。对于状态
i
i
i,运营成本为
c
(
i
)
c(i)
c(i),
c
(
i
)
c(i)
c(i)关于
i
i
i递增。目标是最小化无限期的总期望折现成本。
3.2 策略迭代(Policy Iteration)
- 命题:设
g
g
g为一平稳策略,期望回报为
V
g
V_g
Vg。令
h
h
h为一策略满足
R ( i , h ( i ) ) + α ∑ j P i j ( h ( i ) ) V g ( j ) = max a { R ( i , a ) + α ∑ j P i j ( a ) V g ( j ) } , R(i, h(i))+\alpha \sum_{j} P_{i j}(h(i)) V_{g}(j)=\max _{a}\left\{R(i, a)+\alpha \sum_{j} P_{i j}(a) V_{g}(j)\right\}, R(i,h(i))+αj∑Pij(h(i))Vg(j)=amax{R(i,a)+αj∑Pij(a)Vg(j)},
则
V h ( i ) ≥ V g ( i ) , ∀ i . V_h(i)\ge V_g(i),\forall i. Vh(i)≥Vg(i),∀i.
若 V h ( i ) = V g ( i ) , ∀ i V_h(i)= V_g(i),\forall i Vh(i)=Vg(i),∀i,则 V g = V h = V V_g=V_h=V Vg=Vh=V。 - 步骤:(状态空间有限)
- 选择任一平稳策略 g g g
- 由下列方程计算
V
g
V_g
Vg
V g ( i ) = R ( i , g ( i ) ) + α ∑ j P i j ( g ( i ) ) V g ( j ) , i = 1 , … , n V_{g}(i)=R(i, g(i))+\alpha \sum_{j} P_{i j}(g(i)) V_{g}(j),\quad i=1,\dots,n Vg(i)=R(i,g(i))+αj∑Pij(g(i))Vg(j),i=1,…,n
(解唯一) - 由上述定义得到策略 h h h
- 重复步骤二、三
- 若状态空间有限,则策略空间有限,从而我们可以在有限步内得到最优策略
- 策略迭代的思想和强化学习较为接近
3.3 线性规划(Linear Programming)
- 命题:如果
u
u
u是一有界函数满足
u ( i ) ≥ max a { R ( i , a ) + α ∑ j P i j ( a ) u ( j ) } , i ≥ 0 , u(i) \geq \max _{a}\left\{R(i, a)+\alpha \sum_{j} P_{i j}(a) u(j)\right\},i\ge0, u(i)≥amax{R(i,a)+αj∑Pij(a)u(j)},i≥0,
则
u ( i ) ≥ V ( i ) , ∀ i . u(i)\ge V(i), \quad\forall i. u(i)≥V(i),∀i.
该命题表明 V V V是满足上述不等式的最小的函数。 - 令
0
<
β
<
1
0<\beta<1
0<β<1,则
V
V
V是下列优化问题的唯一解
min u ∑ i = 0 ∞ β n u ( i ) s.t. u ( i ) ≥ R ( i , a ) + α ∑ j P i j ( a ) u ( j ) ∀ i , a \begin{array}{l} \min _{u} \sum_{i=0}^{\infty} \beta^{n} u(i) \\ \text { s.t. } \quad u(i) \geq R(i, a)+\alpha \sum_{j} P_{i j}(a) u(j) \quad \forall i, a \end{array} minu∑i=0∞βnu(i) s.t. u(i)≥R(i,a)+α∑jPij(a)u(j)∀i,a
注:1. β \beta β是为了让问题well-defined;2. 可将 u u u的考虑范围缩小为一个函数类,例如二次函数,从而变成对几个参数的优化问题;3. 约束可能过多(维度灾难),我们可以先找到一个不错的策略跑一些仿真得到样本路径(sample path),从而缩小 i i i的考虑范围。
4. 拓展:无界奖励(Unbounded Rewards)
- 不再要求
R
(
i
,
a
)
R(i,a)
R(i,a)是一致有界的,只需对于任意策略
π
\pi
π,都有
∣ E π [ R ( X n − 1 , a n − 1 ) ∣ X 0 = i ] ∣ ≤ B i n k , \left|E_{\pi}\left[R\left(X_{n-1}, a_{n-1}\right) \mid X_{0}=i\right]\right| \leq B_{i} n^{k}, ∣Eπ[R(Xn−1,an−1)∣X0=i]∣≤Bink,
其中 B i B_i Bi和 k k k是常数,从而有
∣ E π [ ∑ n = 0 ∞ α n R ( X n , a n ) ∣ X 0 = i ] ∣ ≤ B i ∑ n = 0 ∞ α n ( n + 1 ) k < ∞ \left|E_{\pi}\left[\sum_{n=0}^{\infty} \alpha^{n} R\left(X_{n}, a_{n}\right) \mid X_{0}=i\right]\right| \leq B_{i} \sum_{n=0}^{\infty} \alpha^{n}(n+1)^{k}<\infty ∣∣∣∣∣Eπ[n=0∑∞αnR(Xn,an)∣X0=i]∣∣∣∣∣≤Bin=0∑∞αn(n+1)k<∞ - 最优方程的结论还成立,但最优策略和唯一性的结论可能不再成立