马尔科夫决策过程解法(Solution to MDP)
2018-08-24 本文已影响81人
海街diary
1. 马尔科夫决策过程
马尔科夫决策过程(Markov Decision Process) 是一个由4个元素组成的元祖组成。
为状态;
为动作;
为概率转移,指定
; R为奖励函数,指定
;也可以指定为
。
![](https://img.haomeiwen.com/i6408339/968a1c90774d2d2f.png)
很容易定义状态函数为折扣奖励的累计期望,折扣比例
。
从后向传播的观点——当前的价值函数为及时奖励和未来奖励的期望之和,有:
写成矩阵的形式,求解即为求解线性方程组:
最优的价值函数, 满足:
2. 价值迭代算法
价值迭代的算法如下:
- 初始化
![]()
- 不断迭代更新
![]()
理解价值迭代,需要理解最优算子是个压缩映射。 定义
最优算子
如下,
由于是压缩映射,存在唯一的不动点
。这就是上述价值迭代算法的收敛原理,对
进行多次迭代后,会收敛到最优价值函数
。
压缩映射具有如下性质: 对任意和
,有
上述性质说明了这样一个事情: 对于进行迭代后,更新后的
与原来的
,最大误差不超过
(因为
)。也就是每次迭代后,误差以比例
减小。
利用上面压缩性质,可以证明价值迭代算法的收敛性。(下面方框中的内容,可以暂时跳过)
首先,假设马尔科夫决策过程中的奖励
是有界的,即
。根据等比数列性质,那么
也是有上界的。
那么,任意一次迭代过程中的值与
之间的差最大为
。利用压缩性质有,
对初值进行一次迭代后,
可以看到,每次迭代后,最大误差以比例减小。
3. 策略迭代算法
策略迭代算法如下:
- 初始化
.
- 策略评估:(一般而言,下式中
为固定策略由于策略更新)
![]()
- 策略更新:
![]()
- 如果
与上次迭代相比没有变化,则停止;否则,转回2。
更多关于策略迭代的分析,请看这里。
4. 线性规划算法
线性规划算法如下:
理解如下,假设不等式约束以等式成立,那么满足最优算子;如果存在某个
使得不等式约束存在严格大于,优化目标一定会使得这个
继续减小,直至不等式约束以等式存在。所以最终的目标,使得
满足
方程最优解。
5. 附录
-
最优算子收缩性质证明
Thus,