白话文学强化学习-3

马尔可夫决策模型

书接上回,上次说完了折扣率 γ \gamma γ,最后的公式是
G t = R t + 1 + γ R t + 2 + γ 2 R t + 3 + . . . + γ n − 1 R n G_t=R_{t+1} + \gamma R_{t+2} + \gamma^2 R_{t+3} + ... + \gamma^{n-1}R_n Gt=Rt+1+γRt+2+γ2Rt+3+...+γn1Rn
再整理下就是 G t = ∑ k = 1 n γ k − 1 R k G_t=\sum_{k=1}^{n} {\gamma^{k-1} R_{k}} Gt=k=1nγk1Rk
接下来开始真是介绍马尔可夫决策模型,以下简称MDP(Markov Decision Processes)
官方定义(来自百度百科):
马尔可夫决策过程是基于马尔可夫过程理论的随机动态系统的最优决策过程。马尔可夫决策过程是序贯决策的主要研究领域。它是马尔可夫过程与确定性的动态规划相结合的产物,故又称马尔可夫型随机动态规划,属于运筹学中数学规划的一个分支。
马尔可夫决策过程是一个五元组
在这里插入图片描述
这里多了两个新面孔P(.,.),R(.,.),这里一一解释下,首先我们之前的 R t R_t Rt代表这在时间序列t时获得的奖励这里可以代表一个实数,但是在MDP中这个R需要改变下,因为当前时间序列t之所以能获得奖励是因为我们在 s t s_t st时选择了 a t a_t at才产生了 r t r_t rt,但是当前 s t s_t st下能选择的未必只有一个动作可能有m个动作,那每一个m的动作都可能会产生不同的r,所以在MDP中R应该代表的是一个函数,入参是当前的state和选择的action,返回的则是对应的奖励,表示成 R ( s , a ) R(s, a) R(s,a),用代码翻译的话

def R(state, action):
	...
	return reward

而新面孔P,则是状态动作的转移概率,也可以看成一个函数,即probability,完整的P应该是 P ( s ′ , r ∣ s , a ) P(s', r | s, a) P(s,rs,a)
同样翻译成代码的话

def P(state, action):
	...
	return the_probability_of_next_state_and_reward

P就比R复杂很多了,举一个西瓜书上的例子:
家里养了一株植物,植物的状态S有3个缺水,健康,死亡 而我们的目标是培养一个智能机器人学会怎么去养活并且养好这株植物,那这个机器人能执行的动作就两个一个是浇水,一个什么都不做,所以MDP定义出来就会是:
S = ( 缺 水 , 健 康 , 死 亡 ) S=(缺水,健康,死亡) S=()
A = ( 浇 水 , 不 浇 水 ) A=(浇水,不浇水) A=()
R和P就比较复杂了
如果植物
当前状态-》选择的动作-》结果
缺水-》浇水-》80%健康 奖励1 | 20%缺水 奖励-1
缺水-》不浇水-》60%缺水 奖励-1 | 40%死亡 奖励-10
健康-》浇水-》50%健康 奖励1 | 50%死亡 奖励-10
健康-》不浇水 -》 80%健康 奖励1 | 20% 缺水 奖励-1
上述的概率都是我随便假设的,仅仅是讨论作用
而死亡是结束状态,不需要P,因为到了这个状态,当次的强化学习过程就结束了
那R和P换成上面的函数形态则是
P ( 健 康 , 1 ∣ 缺 水 , 浇 水 ) = 0.8 P(健康, 1 | 缺水, 浇水)=0.8 P(,1,)=0.8
P ( 缺 水 , − 1 ∣ 缺 水 , 浇 水 ) = 0.2 P(缺水, -1 | 缺水, 浇水)=0.2 P(,1,)=0.2
P ( 缺 水 , − 1 ∣ 缺 水 , 不 浇 水 ) = 0.6 P(缺水, -1 | 缺水, 不浇水)=0.6 P(,1,)=0.6
P ( 死 亡 , − 10 ∣ 缺 水 , 不 浇 水 ) = 0.4 P(死亡, -10 | 缺水, 不浇水)=0.4 P(,10,)=0.4

P ( 健 康 , 1 ∣ 健 康 , 浇 水 ) = 0.5 P(健康, 1 | 健康, 浇水)=0.5 P(,1,)=0.5
P ( 死 亡 , − 10 ∣ 健 康 , 浇 水 ) = 0.5 P(死亡, -10 | 健康, 浇水)=0.5 P(,10,)=0.5
P ( 健 康 , 1 ∣ 健 康 , 不 浇 水 ) = 0.8 P(健康, 1 | 健康, 不浇水)=0.8 P(,1,)=0.8
P ( 缺 水 , − 1 ∣ 健 康 , 不 浇 水 ) = 0.2 P(缺水, -1 | 健康, 不浇水)=0.2 P(,1,)=0.2

R ( 缺 水 , 浇 水 ) = 0.8 ∗ 1 + 0.2 ∗ ( − 1 ) R(缺水, 浇水)=0.8 * 1 + 0.2 * (-1) R(,)=0.81+0.2(1)
R ( 缺 水 , 不 浇 水 ) = 0.6 ∗ ( − 1 ) + 0.4 ∗ ( − 10 ) R(缺水, 不浇水)=0.6 * (-1) + 0.4 * (-10) R(,)=0.6(1)+0.4(10)
R ( 健 康 , 浇 水 ) = 0.5 ∗ ( 1 ) + 0.5 ∗ ( − 10 ) R(健康, 浇水)=0.5 * (1) + 0.5 * (-10) R(,)=0.5(1)+0.5(10)
R ( 健 康 , 不 浇 水 ) = 0.8 ∗ ( 1 ) + 0.2 ∗ ( − 1 ) R(健康, 不浇水)=0.8 * (1) + 0.2 * (-1) R(,)=0.8(1)+0.2(1)

γ \gamma γ=0.9
之所以公式会变成这样就是因为在当前s下选择一个动作a,转移到下一个s’并不是一个100%确定的事情了,所以对应的奖励r就会变成上面概率乘以奖励之和。
以上就是MDP的五元组
今日总结:可以看出MDP里最复杂的地方就是P,但是我们这个P从哪里来呢?先不说,下回我们就要说到策略了,我们下回再见~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值