马尔可夫决策过程(MDP)

原文链接:https://oneraynyday.github.io/ml/2018/05/06/Reinforcement-Learning-MDPs/,还看了一个视频,讲的挺好的,链接:https://www.youtube.com/watch?v=Oxqwwnm_x0s

MDPs are non-deterministic search problems

与多臂老虎机不同的一点是给每个时刻增加context,即state

增加context

马尔可夫决策过程(Markov Decision Process,MDP)

视频里的一些笔记:

1. 像一个搜索树

像一个搜索树

蓝色小三角是state,绿色圆形是q-state,表示之前是s状态,然后执行action a,转移的状态也有几种可能。

2. 为什么加discount factor?

more is better,and now is better。我之前一直不理解为什么要加discount factor,原因应该就在此,希望越早获得越多的reward。values of rewards decay exponentially,指数级衰减。前面的rewards更有用,并且这样可以帮助算法收敛

3. 如果是无限的,怎么处理?

4. 迭代的一个例子:


学习第一个链接的一些笔记:

1. 形式化表示:

1)agent-environment interface:

agent是决策者,即decision maker。它与环境交互,environment给出reward。(Rt,St) t>=0 (reward,state)是一个马尔可夫链,一个马尔可夫链的定义如下:

Xn+1的状态只依赖于Xn

一个有限的MDP为:

将Rt边缘化后:

state-transition probabilities

Expected reward for a state-action pair can be defined  as:

Expected reward

2)Returns and Episodes:

很多情况都是无限个时间点的,但是可以使用discounting的方法计算,当前一个时刻的rewards会比以后的rewards好,并且以后的rewards都接近0。就可以转换为有限步骤。

(这里很奇怪,因为Gt是以后时刻的reward累加,我查了下别的博客都是这样写的,比如Rt代表的是状态St-1转移到St的reward)

maximize the reward sequence Gt

3) Policies and Value Functions:

A policy:从states映射到选择一个action的可能性,如果agent是依据策略π,那么它会根据执行的action a是根据π(a|s)

A value of a state s:在策略π下,如果采取建议的action,从state s开始的expected return,state-value function是希望在最后能最大化的。

state-value function


action-value function

这两个函数都有迭代关系:

state-value function的迭代关系
action-value function的迭代关系


这两个函数的关系:

两个函数的关系

2. Iterative Policy Evaluation

更新策略
向量化

凸集的最大值总是大于或等于集合的任何元素的凸组合

(很多公式要仔细看,真的有难度,多看几遍吧)

策略更新的步骤:

推荐阅读更多精彩内容