强化学习常用算法总结

本文为2020年6月参加的百度PaddlePaddle强化学习训练营总结

1. 表格型方法:Sarsa和Q-Learning算法

State-action-reward-state’-action’, 简称Sarsa,是为了建立和优化状态-动作(state-action)的价值Q表格所建立的方法。首先初始化Q表格,根据当前的状态和动作与环境进行交互后,得到奖励reward以及下一步的状态和动作后,对Q表格进行更新;并不断重复这个过程。
Q表格更新公式为:

另外,为了保证每一步的探索性,Sarsa在执行下一步时采用e-greedy算法,即根据一定的概率估计来选择下一步的action。Sarsa的这种更新Q表格方式称为“on-policy”方式,即先做出下一步的动作再回头开更新Q值。

与之对应的是“off-policy”方式,即在更新Q表格时,无需知道下一步的动作,而是假设下一步的动作可以取到最大的Q值。基于这种“off-policy”的方法称为Q-Learning算法,其更新Q表格的数学表达式为:

2. 基于神经网络方法:DQN算法

Deep Q-Learning,简称DQN算法是为了解决传统的表格型方法在大规模强化学习任务时遇到的执行效率低,存储量低等问题而提出的算法,它的基本思想是采用神经网络的方式来近似代替Q表格。DQN本质上还是Q-Learning算法,同样为了更好的与环境进行交互,采用e-greedy算法。
DQN的创新在于:

  1. 经验回放(experience replay):使用经验池存在多条s,a,r,s’信息,并随机选择一批数据作为输入到神经网络进行训练。经验回放保证了样本的关联性和利用效率问题,即对于某一条信息它有多次机会可以进入网络进行训练。
  2. Q目标固定(fixed-Q-target):复制一个和原来一样的Q网络,用来训练目标Q。Q目标固定主要为了解决训练过程的稳定性问题。

3. 策略梯度方法:Policy-Gradient算法

策略梯度方法是指在优化神经网络的过程中,对于策略π(s,a)的期望回报,所有的轨迹获得的回报R与对应的轨迹发生概率p的加权和,当N足够大时,可通过采样N个Episode求平均的方式近似表达,即:

4. 在连续动作空间上求解:DDPG算法

Deep Deterministic Policy Gradient, 简称DDPG算法,是结合DQN算法与Actor-Critic提出的求解针对连续动作空间上的学习任务的算法。
DDPG算法实现的流程:

强化学习常用算法总结相关推荐

  1. 强化学习常用算法+实际应用 ,必须get这些核心要点!

      新智元报道  编辑:元子 [新智元导读]强化学习(RL)是现代人工智能领域中最热门的研究主题之一,其普及度还在不断增长.本文介绍了开始学习RL需要了解的核心要素.戳右边链接上  了解更多! 强化学 ...

  2. 强化学习常用算法+实际应用

    点击我爱计算机视觉标星,更快获取CVML新技术 本文转载自新智元.   新智元报道  编辑:元子 [新智元导读]强化学习(RL)是现代人工智能领域中最热门的研究主题之一,其普及度还在不断增长.本文介绍 ...

  3. 【强化学习PPO算法】

    强化学习PPO算法 一.PPO算法 二.伪代码 三.相关的简单理论 1.ratio 2.裁断 3.Advantage的计算 4.loss的计算 四.算法实现 五.效果 六.感悟   最近再改一个代码, ...

  4. 强化学习—— TD算法(Sarsa算法+Q-learning算法)

    强化学习-- TD算法(Sarsa算法+Q-learning算法) 1. Sarsa算法 1.1 TD Target 1.2 表格形式的Sarsa算法 1.3 神经网络形式的Sarsa算法 2. Q- ...

  5. 深度强化学习-DDPG算法原理和实现

    全文共3077个字,8张图,预计阅读时间15分钟. 基于值的强化学习算法的基本思想是根据当前的状态,计算采取每个动作的价值,然后根据价值贪心的选择动作.如果我们省略中间的步骤,即直接根据当前的状态来选 ...

  6. 【人工智能II】实验2 强化学习Q-Learning算法

    强化学习Q-Learning算法 核心思想 实验原理 实验流程图 实验分析 理解Q-Learning算法 GYM库 更换实验环境 实验代码 Q-Learning: Sarsa代码 搞不懂我一个本科生为 ...

  7. 基于强化学习SAC_LSTM算法的机器人导航

    [前言]在人群之间导航的机器人通常使用避碰算法来实现安全高效的导航.针对人群中机器人的导航问题,本文采用强化学习SAC算法,并结合LSTM长短期记忆网络,提高移动机器人的导航性能.在我们的方法中,机器 ...

  8. DRL:强化学习-Q-Learning算法

    文章目录 强化学习 Q-Learning算法 1. 问题及原因 2. Estimator原理与思想 (1)单估计器方法(Single Estimator) (2)双估计器方法(Double Estim ...

  9. 深度强化学习主流算法介绍(二):DPG系列

    之前的文章可以看这里 深度强化学习主流算法介绍(一):DQN系列 相关论文在这里 开始介绍DPG之前,先回顾下DQN系列 DQN直接训练一个Q Network 去估计每个离散动作的Q值,使用时选择Q值 ...

最新文章

  1. java判断时间为上午,中午,下午,晚上,凌晨
  2. jquery实现定时调度(倒计时)
  3. 奇迹觉醒服务器找不到,奇迹MU觉醒与服务器断开连接 原因及解决办法
  4. 2064: 分裂 - BZOJ
  5. Html5 学习笔记 --》html基础 css 基础
  6. 我为什么放弃了 Chrome?
  7. ASP.NET3.5下的MSChart图表控件使用
  8. chainmaker 区块中最大交易数 block_tx_capacity设置 区块大小 区块容量
  9. 2b青年欢乐多之地铁奇幻记
  10. 非常有意思的35句话
  11. 【1002】Eclipse安装(编程软件)、Eclipse创建第一Java项目、eclipse安装包
  12. LCD1602单片机(STC51/STM32)驱动程序详解
  13. 可行性分析报告-学生信息管理系统
  14. 开发了一个拼多多淘宝闲鱼所有虚拟店商品通过百度网盘自动发货机器人软件助手
  15. 3ds Max 2016的安装和破解
  16. Bat如何制作菜单选择
  17. 公众号引流好困难,这个病该怎么治?
  18. 华为服务器如何修改ip地址,华为路由器IP地址设置问题-192.168.1.1进不去
  19. 火狐——图片闪动 部分情况下加载不出来
  20. 报错:WebMvcConfigurer.class cannot be opened because it does not exist

热门文章

  1. 用html画一个企鹅图案的代码,HTML5 Canvas来绘制图形
  2. Beautifully crafted open source icons
  3. Python基础-不要对实例属性和类属性使用相同的名字
  4. 印度市场救不了苹果手机,也救不了库克
  5. 做视频自媒体,选择一个合适的剪辑软件很重要,这些或许适合你
  6. vcs -xprop的理解
  7. 在字符串中输入回车换行或其它特殊字符
  8. [Markdown编辑器推荐] - 这个MarkText有点东西啊
  9. Android 多种限定符
  10. 视频超分修复,让重温经典影片有了新的可能