迭代法求解贝尔曼期望方程的数学证明

强化学习的核心是用迭代法求解马尔可夫决策过程(MDP)的贝尔曼期望方程(Bellman Optimality Equation):
V ( s ) = R s + γ ∑ s ′ ∈ S P s s ′ V ( s ′ ) V(s) = R_s + \gamma \sum\limits_{s' \in S}P_{ss'}V(s') V(s)=Rs+γsSPssV(s)
一般来说,可从两个角度证明迭代法求解贝尔曼期望方程的正确性(本文依赖于<1>):

  • 1_泛函分析:压缩映射与巴拿赫不动点定理
  • 2_数值分析:不动点迭代法及其收敛定理

参考资料:

  • 如何证明迭代式策略评价、值迭代和策略迭代的收敛性? https://zhuanlan.zhihu.com/p/39279611
  • 强化学习中无处不在的贝尔曼最优性方程,背后的数学原理知多少? https://blog.csdn.net/FnqTyr45/article/details/104889982
  • 不动点迭代法及其收敛原理 https://wenku.baidu.com/view/48350321dd36a32d7375818e.html
  • 压缩映射与巴拿赫不动点定理https://zhuanlan.zhihu.com/p/336255678

1 度量空间(Metric Space)

1.1 度量空间的概念

度量空间 M : < X , d > M :<X, d> M<X,d> ,其中X是集合,d 是某种度量函数。度量空间是指在一个集合上的度量,度量则是定义了集合中任何两个元素之间的距离。例如,欧几里德空间是度量空间,其距离定义为欧几里德距离。一个度量 d d d必须满足以下四条性质:

  • 单位性: d ( x , x ) = 0 d(x,x) = 0 d(x,x)=0

  • 非负性: d ( x , y ) > 0 d(x, y) >0 d(x,y)>0

  • 对称性: d ( x , y ) = d ( y , x ) d(x,y) = d(y,x) d(x,y)=d(y,x)

  • 三角不等式: d ( x , z ) ≤ d ( x , y ) + d ( y , z ) d(x,z) ≤ d(x,y)+d(y,z) d(x,z)d(x,y)+d(y,z)

常见的度量函数 d d d有:

(1)范数metric: d ( x , y ) = ∣ ∣ x − y ∣ ∣ n , n ≥ 1 d(x,y)=||x-y||_n,\quad n \geq 1 d(x,y)=xyn,n1, 其中 ∣ ∣ c ∣ ∣ n ||c||_n cn 表示向量的 n n n范数, ∣ ∣ c ∣ ∣ n = ( ∑ i ∣ c i ∣ n ) 1 n ||c||_n = (\sum\limits_{i} |c_i|^n)^{\frac{1}{n}} cn=(icin)n1

  • n = 1 n=1 n=1时,为绝对值距离,又叫曼哈顿距离,即 d ( x , y ) = ∑ i ∣ x i − y i ∣ d(x,y)=\sum\limits_{i}|x_i-y_i| d(x,y)=ixiyi
  • n = 2 n=2 n=2时,为欧式距离
  • n = ∞ n=\infty n=时,为最大值距离,又叫切比雪夫距离,即 d ( x , y ) = m a x i ∣ x i − y i ∣ d(x,y)= \underset{i}{max}|x_i-y_i| d(x,y)=imaxxiyi

(2)离散metric:
d ( x , y ) = { 0   i f   x = y 1   o t h e r w i s e d(x,y) = \begin{cases} 0\ & if \ x=y \\ 1\ & otherwise \\ \end{cases} d(x,y)={0 1 if x=yotherwise

1.2 完备度量空间

如果由集合 X X X中元素组成的每个可能的柯西序列都收敛到集合 X X X,则度量空间 < X , d > <X, d> <X,d> 是完备的。也就是说,由集合中的每个柯西序列的极限所对应元素也属于该集合, 这也是为什么它被称为“完备”的原因。

**定义 :**一个度量空间(metric space) < X , d > <X,d> <X,d> 是完备的(或者说是柯西的<Cauchy的>),当且仅当所有在 X X X中的Cauchy序列,都会收敛到 X X X中。

即,在完备的度量空间中,对于任意在 X X X中的点序列 x 1 , x 2 , x 3 , x 4 , ⋯ ∈ X x_1, x_2, x_3, x_4,\dots \in X x1,x2,x3,x4,X ,如果序列是Cauchy的,那么该序列收敛于 X X X , 即 l i m n → ∞ a n ∈ X \underset{n\rightarrow \infty}{lim}a_n \in X nlimanX

换句话说,完备的metric space是没有缺失的点的。有一种直观的形容方法就是完备空间“没有孔”(内部不缺点),“不缺皮”(边界不缺点)。比如,对于有理数集合 R R R , 用绝对值 ∣ . ∣ |.| .函数衡量两个有理数的距离,这是一个metric space,那么它是不是完备的呢?对于Cauchy序列:
x n + 1 = { 1 , n = 1 x n 2 + 1 x n n > 1 x_{n+1} = \begin{cases} 1, & n=1 \\ \frac{x_n}{2}+\frac{1}{x_n} & n>1 \\ \end{cases} xn+1={1,2xn+xn1n=1n>1
这个序列其实是: 1 , 3 / 2 , 17 / 12 … {1, 3/2, 17/12 … } 1,3/2,17/12。解方程 x = x 2 + 1 x x = \frac{x}{2}+\frac{1}{x} x=2x+x1, 得到 x = 2 x = \sqrt{2} x=2 。可以看出这个序列中的值都是有理数,而且是Cauchy序列,收敛于 x n = 2 x_n = \sqrt{2} xn=2 。因此这样一个有理数序列收敛的点不在集合 R R R中,因此我们认为有理数集合是有缺失的点的,不是一个完备的metric space。
完备的metric space这个概念非常的重要,很多时候我们很难证明一个序列是收敛的,但是比较容易证明它是Cauchy的,只要确认该Cauchy序列在完备的metric space中,即可直接得到收敛性。

2 压缩映射

2.1 映射:

两个集合之间的一种对应关系 T : X → Y T:X \rightarrow Y TXY,对 X X X中的每个元素 x x x Y Y Y中都只有一个元素 y y y与之对应。分析:

  • 宏观上,映射是集合到集合的关系
  • 微观上,是俩个元素之间的对应的关系

2.2 压缩映射:

< X , d > <X,d> <X,d>是距离空间,映射 T : X → X T:X \rightarrow X TXX。若存在一个常数 α ∈ [ 1 , 0 ) \alpha \in [1,0) α[1,0),使得对任意 x , y ∈ X x,y \in X x,yX,都有:
d ( T ( x ) , T ( y ) ) ≤ α ⋅ d ( x , y ) d(T(x),T(y)) \leq \alpha \cdot d(x,y) d(T(x),T(y))αd(x,y)
T T T X X X上的压缩映射。例如: T = f ( x ) = 1 2 x T = f(x) = \frac {1}{2} x T=f(x)=21x

  • 分析:经过映射后,两点间距离更小。
  • 问题:距离怎么定义?任取一种距离还是对于任何距离都成立?
  • 答: ( X , d ) (X,d) (X,d)是完备的距离空间,则只要有一种 d d d 度量函数即可。

2.3 举例解释

总结:集合,度量,压缩映射三者的关系:集合,度量,压缩映射的关系
例题:设 X = [ 1 , + ∞ ) ⊂ R 1 X = [1,+\infty) \subset R^1 X=[1,+)R1 T : X → X T:X \rightarrow X TXX,定义: T ( x ) = x 2 + 1 x T(x) = \frac{x}{2} + \frac {1}{x} T(x)=2x+x1。求证 T T T是压缩映射。

思路:选取一种合适的度量函数 d d d,目标是根据定义证明: d ( T ( x ) , T ( y ) ) ≤ α ⋅ d ( x , y ) , α ∈ [ 0 , 1 ) d(T(x),T(y)) \leq \alpha \cdot d(x,y), \alpha \in [0,1) d(T(x),T(y))αd(x,y),α[0,1)

证明:对于任意 x , y ∈ X x,y \in X x,yX,当 d d d为绝对值距离时:
d ( T ( x ) , T ( y ) ) = ∣ x 2 + 1 x − ( y 2 + 1 y ) ∣ = ∣ 1 2 − 1 x y ∣ ⋅ ∣ x − y ∣ d(T(x),T(y)) = |\frac{x}{2} + \frac {1}{x} - (\frac{y}{2} + \frac {1}{y})|=|\frac{1}{2}-\frac{1}{xy}|\cdot |x-y| d(T(x),T(y))=2x+x1(2y+y1)=21xy1xy
由于 x , y ∈ X = [ 1 , + ∞ ) ⇒ 0 < 1 x y ≤ 1 x,y \in X = [1,+\infty) \Rightarrow 0<\frac{1}{xy}\leq 1 x,yX=[1,+)0<xy11

所以 ∣ 1 2 − 1 x y ∣ ≤ 1 2 < 2 3 |\frac{1}{2}-\frac{1}{xy}|\leq \frac{1}{2}< \frac{2}{3} 21xy121<32。从而:
d ( T ( x ) , T ( y ) ) < 2 3 d ( x , y ) d(T(x),T(y)) < \frac {2}{3} d(x,y) d(T(x),T(y))<32d(x,y)

3 不动点定理

3.1 不动点的概念

已知函数 f ( x ) f(x) f(x),假设存在 x x x,使得 f ( x ) = x f(x)=x f(x)=x,那么点 ( x , f ( x ) ) (x,f(x)) (x,f(x))就是函数 f ( x ) f(x) f(x)的一个不动点。

例如:已知函数 f ( x ) = x 2 − 2 x + 2 f(x)=x^2-2x+2 f(x)=x22x+2,令 f ( x ) = x f(x)=x f(x)=x,则变形为 x 2 − 3 x + 2 = 0 x^2-3x+2=0 x23x+2=0,则 x = 1 , 2 x=1,2 x=1,2。所以点 ( 1 , 1 ) , ( 2 , 2 ) (1,1),(2,2) 1,1,2,2就是函数 f ( x ) f(x) f(x)的不动点。

3.2 不动点定理

< X , d > <X,d> <X,d>是完备的距离空间, T : X → X T:X \rightarrow X TXX是压缩映射,则 T T T有唯一的不动点。

证明思路:由 T T T 构造一个数列 { x n } \{x_n\} {xn} ⟶ \longrightarrow 证明 { x n } \{x_n\} {xn}是柯西数列 ⟶ \longrightarrow 存在极限点 x ∗ x^{*} x x ∗ ∈ X x^{*}\in X xX ⟶ \longrightarrow $ T(x)=x^{*}$ ⟶ \longrightarrow 证明 x ∗ x^{*} x唯一。
证明:
第一步:任取 x 0 ∈ X x_0 \in X x0X,构造数列: x 1 = T ( x 0 ) , x 2 = T ( x 1 ) = T 2 ( x 0 ) , . . . , x m = T ( x m − 1 ) = T m ( x 0 ) , . . . , x n = T ( x n − 1 ) = T n ( x 0 ) x_1 = T(x_0),x_2 = T(x_1) = T^2(x_0),...,x_m = T(x_{m-1})= T^m(x_0),...,x_n = T(x_{n-1}) = T^n(x_0) x1=T(x0)x2=T(x1)=T2(x0)...xm=T(xm1)=Tm(x0)...xn=T(xn1)=Tn(x0)。则:
d ( x m + 1 , x m ) = d ( T ( x m ) , T ( x m − 1 ) ) ≤ α d ( x m , x m − 1 ) d ( x m , x m − 1 ) = d ( T ( x m − 1 ) , T ( x m − 2 ) ) ≤ α d ( x m − 1 , x m − 2 ) ⋯   ⋯ d ( x 2 , x 1 ) = d ( T ( x 1 ) , T ( x 0 ) ) ≤ α d ( x 1 , x 0 ) ⟹ d ( x m + 1 , x m ) ≤ α m d ( x 1 , x 0 ) (1) \begin{aligned} &d(x_{m+1},x_m) = d(T(x_m),T(x_{m-1})) \leq \alpha d(x_m,x_{m-1}) \\ &d(x_{m},x_{m-1}) = d(T(x_{m-1}),T(x_{m-2})) \leq \alpha d(x_{m-1},x_{m-2}) \\ &\cdots \ \cdots \\ &d(x_2,x_1) = d(T(x_1),T(x_0)) \leq \alpha d(x_1,x_0) \\ &\Longrightarrow d(x_{m+1},x_m) \leq \alpha^m d(x_1,x_0) \tag{1} \end{aligned} d(xm+1,xm)=d(T(xm),T(xm1))αd(xm,xm1)d(xm,xm1)=d(T(xm1),T(xm2))αd(xm1,xm2) d(x2,x1)=d(T(x1),T(x0))αd(x1,x0)d(xm+1,xm)αmd(x1,x0)(1)
对于任意 m < n m<n m<n,重复应用三角不等式,

d ( x m , x n ) ≤ d ( x m , x m + 1 ) + d ( x m + 1 , x n ) ≤ d ( x m , x m + 1 ) + d ( x m + 1 , x m + 2 ) + d ( x m + 2 , x n ) ≤ d ( x m , x m + 1 ) + . . . + d ( x n − 1 , x n ) d(x_m,x_n) \leq d(x_m,x_{m+1}) + d(x_{m+1},x_n)\leq d(x_m,x_{m+1}) + d(x_{m+1},x_{m+2}) + d(x_{m+2},x_{n})\leq d(x_m,x_{m+1}) +...+ d(x_{n-1},x_{n}) d(xm,xn)d(xm,xm+1)+d(xm+1,xn)d(xm,xm+1)+d(xm+1,xm+2)+d(xm+2,xn)d(xm,xm+1)+...+d(xn1,xn)

代入 ( 1 ) (1) (1)式,得:

d ( x m , x n ) ≤ ( α m + α m + 1 + . . . + α n − 1 ) d ( x 1 , x 0 ) = α m 1 − α n − m 1 − α d ( x 1 , x 0 ) ⟶ m → + ∞ 0 d(x_m,x_n) \leq (\alpha^m + \alpha^{m+1}+ ...+\alpha^{n-1})d(x_1,x_0)=\alpha^m \frac{1-\alpha^{n-m}}{1-\alpha}d(x_1,x_0)\stackrel{m \rightarrow + \infty}{\longrightarrow}0 d(xm,xn)(αm+αm+1+...+αn1)d(x1,x0)=αm1α1αnmd(x1,x0)m+0
{ x n } \{x_n\} {xn}是柯西数列。
< X , d > <X,d> <X,d>是完备的,所以 ∃ x ∗ ∈ X \exists x^{*} \in X xX,使得 l i m n → ∞ x n = x ∗ ( 2 ) \underset {n \rightarrow \infty}{lim} x_n = x^{*} \qquad (2) nlimxn=x(2)
第二步:由(2)式可得: l i m n → ∞ x n − 1 = x ∗ \underset {n \rightarrow \infty}{lim} x_{n-1} = x^{*} nlimxn1=x

又由于 T ( x ) T(x) T(x)是连续函数,且 x n = T ( x n − 1 ) x_n = T(x_{n-1}) xn=T(xn1)两边取极限:

左 边 : l i m n → ∞ x n = x ∗ 左边:\underset {n \rightarrow \infty}{lim} x_{n} = x^{*} nlimxn=x

右 边 : l i m n → ∞ T ( x n − 1 ) = T ( l i m n → ∞ x n − 1 ) = T ( x ∗ ) 右边:\underset {n \rightarrow \infty}{lim} T(x_{n-1}) = T(\underset {n \rightarrow \infty}{lim}x_{n-1}) = T(x^{*}) nlimT(xn1)=T(nlimxn1)=T(x)

从而 T ( x ∗ ) = x ∗ T(x^{*}) = x^{*} T(x)=x x ∗ x^{*} x是不动点。

4 MRP(马尔科夫奖励过程)中的贝尔曼期望方程

MRP中,假设状态集 S = s 1 , s 2 , . . . , s n S = s_1,s_2,...,s_n S=s1,s2,...,sn ,贝尔曼期望方程(Bellman Equation):
v ( s ) = R s + γ ∑ s ′ ∈ S P s s ′ v ( s ′ ) v(s) = R_{s} + \gamma \sum\limits_{s′\in{S}}P_{ss′}v(s′) v(s)=Rs+γsSPssv(s)
可以写成如下矩阵的形式:
v = R + γ P v v= R + \gamma Pv v=R+γPv
它表示:
[ v ( s 1 ) ⋯ v ( s n ) ] = [ R 1 ⋯ R n ] + γ [ P 11 ⋯ P 1 n ⋯   ⋯   ⋯ P n 1 ⋯ P n n ] [ v ( s 1 ) ⋯ v ( s n ) ] \begin{bmatrix}v(s_1) \\ \cdots \\ v(s_n) \end{bmatrix} = \begin{bmatrix} R_1 \\ \cdots \\ R_n \end{bmatrix} + \gamma \begin{bmatrix} P_{11} \cdots P_{1n} \\ \cdots \ \cdots \ \cdots \\ P_{n1} \cdots P_{nn}\end{bmatrix} \begin{bmatrix}v(s_1) \\ \cdots \\ v(s_n) \end{bmatrix} v(s1)v(sn)=R1Rn+γP11P1n  Pn1Pnnv(s1)v(sn)
则映射函数为:
T ( v ) = R + γ P v T(v) = R + \gamma Pv T(v)=R+γPv

4.1 定义度量空间

对于状态集 S = s 1 , s 2 , . . . , s n S = s_1,s_2,...,s_n S=s1,s2,...,sn,我们定义状态值函数向量:
V = [ v ( s 1 ) v ( s 2 ) . . . v ( s n ) ] V = \begin{bmatrix} v(s_1) \\ v(s_2) \\ ...\\ v(s_n) \end{bmatrix} V=v(s1)v(s2)...v(sn)

该向量属于值函数空间 V V V,我们考虑 V V V是一个 n n n维全空间。定义该空间的度量是无穷范数,即:

d ( u , v ) = m a x s ∈ S ∣ u ( s ) − v ( s ) ∣ d(u,v) = \underset{s \in S}{max}|u(s)-v(s)| d(u,v)=sSmaxu(s)v(s)

V V V于是向量全空间,因此 < V , d > <V,d> <V,d>是一个完备的度量空间。

4.2 T(v)是压缩映射

d ( T ( u ) , T ( v ) ) = ∣ ∣ ( R + γ P u ) − ( R + γ P v ) ∣ ∣ ∞ = ∣ ∣ γ P ( u − v ) ∣ ∣ ∞ ≤ ∣ ∣ γ P ∣ ∣ u − v ∣ ∣ ∞ ∣ ∣ ∞ ≤ γ ∣ ∣ u − v ∣ ∣ ∞ = γ d ( u , v ) \begin{aligned} d(T(u),T(v)) &= ||(R+\gamma Pu) - (R+\gamma Pv)||_{\infty} \\ &=||\gamma P(u-v)||_{\infty} \\ &\leq ||\gamma P||u-v||_{\infty}||_{\infty} \\ &\leq \gamma ||u-v||_{\infty} = \gamma d(u,v) \end{aligned} d(T(u),T(v))=(R+γPu)(R+γPv)=γP(uv)γPuvγuv=γd(u,v)
根据压缩映射定理,我们可以直接得到如下的结论:

  • 贝尔曼期望方程收敛于唯一的 V V V
  • 迭代式策略评价算法以 γ \gamma γ的线性速率收敛于 v v v
  • 策略迭代收敛于 v ∗ v^{*} v
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

leelee6591

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值