百度飞桨强化学习七日训练营学习总结

百度飞桨强化学习七日训练营学习总结

本次课程小白友好,感谢科科老师的热情细心的“领进门”,因为是零基础所以总结可能不到位,看到这篇文章的小伙伴们见谅

强化学习的分类

因为研究课题接触过动态规划,在控制领域强化学习可以叫做自适应动态规划,或者近似动态规划(approximate dynamic programme,ADP)
在这里插入图片描述
由上图可知动态规划是基于模型的强化学习,状态转移概率和奖励函数是已知的,在老师举出的例子中人碰到大熊下一步的动作有多大概率是选择装死或逃跑(状态转移概率),以及装死和逃跑分别是否能生还(奖励函数)是未知的,现实生活中的大部分情况跟老师举的例子是一样model-free的,所以需要进行不断训练得到最大奖励。

相关知识

1.马尔科夫决策过程
指当前时刻的状态只跟上一时刻的状态有关,与下一时刻及以后的状态无关。马尔科夫5元组(S,A.R,γ)分别表示状态空间、动作空间、回报函数和衰减因子。
2.Epsilon-greedy Exploration
在选择下一个动作时引入一个系数ε(一般在0到1之间),用1-ε的概率选择目前汇报最高的动作,有ε的概率随机选择其他动作。(注意这里是Sarsa和Q-learning的区别之一)这样做使决策具有前瞻性,老师使用的救护车的例子就很贴切:如果选择目前回报最高的动作,救护车就会选择等待红灯,然闯红灯虽然会使reward-1,但是把病人及时送到医院reward为1000分,所以对全局决策来说闯红灯是最优的。

Sarsa 和Q-learning

两者都是表格型的强化学习,通过更新Q表格来获取最佳reward,两者的区别除了上面说的还有Q表格的更新公式不一样
在这里插入图片描述
以上是sarsa的Q表格更新公式,包含了下一步的状态和动作,也就是说sarsa做出了下一步的动作才更新Q值,所以它是on-policy,代码如下

if done:
            target_Q = reward # 没有下一个状态了
        else:
            target_Q = reward + self.gamma * self.Q[next_obs, next_action] # Sarsa
        self.Q[obs, action] += self.lr * (target_Q - predict_Q) # 修正q

而Q-learning的更新公式不包含下一步的动作,
在这里插入图片描述


`&#
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值