基本网络结构:

还是基于Actor-critic网络的一种结构,包含策略网络和价值网络。

这里的策略网络为,但输出不再是概率分布,而是一个确定的实数或向量,输出的动作a是确定的,没有随机性,在机械臂的例子中,输出的是二维向量,因为机械臂有两个动作维度。

这里的价值网络有两个输入,分别是状态s和动作a,输出的是一个实数,即对动作的评价。

我们要做的就是训练这两个网络,让策略函数选取动作越来越好,让价值函数打分越来越准确。

价值网络的训练:

1.观测到一个四元组。

2.根据观测到的t时刻的动作和状态,预测t时刻的价值。

3.预测t+1时刻的价值,这里用到的是把输入到策略网络预测出来的,但是这个并不是要去执行的动作,只是为了代入

4.计算TD error,括号里的部分为TD target。

5.进行梯度下降更新参数w。

策略网络的训练:

更新策略网络要依赖于价值网络,价值网络可以评价动作a的好坏,从而指导策略网络进行改进,策略网络自己不知道动作的好坏,要靠价值网络的输出,价值网络的输出越大,就代表评价越好,动作越好,所以我们要改变策略网络的参数θ,让价值网络的输出越大越好。

目标就是增加价值网络的输出,而价值网络中的a是由策略网络得出的,所以这里的DPG(确定策略梯度)就是价值网络关于θ求导,然后最后一步做梯度上升,来更新参数θ。使得θ的值更好,选取的动作的价值评分更高。

小的改进(用target network):

第四步计算时,用的不再是策略网络和价值网络,而是用新的target network,target network的结构和前者一模一样,但是参数略有不同。

其他的改进方法如下:

随机策略和确定策略的区别:

DPG(确定策略梯度)相关推荐

  1. 【从RL到DRL】深度强化学习基础(五)离散控制与连续控制——确定策略梯度方法(DPG)、使用随机策略进行连续控制

    目录 确定策略梯度(Deterministic Policy Gradient,DPG) 改进:使用Target Network 随机策略与确定策略网络对比 使用随机策略进行连续控制 策略网络搭建 策 ...

  2. 强化学习笔记:连续控制 确定策略梯度DPG

    1 离散控制与连续控制 之前的无论是DQN,Q-learning,A2C,REINFORCEMENT,SARSA什么的,都是针对离散动作空间,不能直接解决连续控制问题. 考虑这样一个问题:我们需要控制 ...

  3. 强化学习—— 离散与连续动作空间(随机策略梯度与确定策略梯度)

    强化学习-- 离散与连续动作空间(随机策略梯度与确定策略梯度) 1. 动作空间 1.1 离散动作空间 1.2 连续动作空间 2. 确定策略梯度做连续控制 2.1 确定策略梯度推导 2.2 确定策略梯度 ...

  4. AI大事件 | Geoffrey Hinton决定抛弃反向传播,预期策略梯度算法

    大数据文摘作品 编译 | 宁云州 呜啦啦啦啦啦大家好呀,又到了本周的AI大事件时间了.过去的一周中AI圈都发生了什么?大佬们互撕了哪些问题?研究者们发布了哪些值得一读的论文?又有哪些开源的代码和数据库 ...

  5. 强化学习(九)- 策略梯度方法 - 梯度上升,黑箱优化,REINFORCE算法及CartPole实例

    策略梯度方法 引言 9.1 策略近似和其优势 9.2 策略梯度定理 9.2.1 梯度上升和黑箱优化 9.2.2 策略梯度定理的证明 9.3 REINFORCE:蒙特卡洛策略梯度 9.3.1 轨迹上的R ...

  6. 策略梯度训练cartpole小游戏

    我原来已经安装了anaconda,在此基础上进入cmd进行pip install tensorflow和pip install gym就可以了. 在win10的pycharm做的. policy_gr ...

  7. 【强化学习】策略梯度Policy-Gradient

    目录 Value-based 强化学习方法的不足 Policy-based 强化学习方法的引入 策略梯度的优化目标 策略函数的设计 Softmax策略函数 Gauss策略函数 蒙特卡罗策略梯度rein ...

  8. triplet loss后面不收敛_Policy Gradient——一种不以loss来反向传播的策略梯度方法...

    目录 1.前言 2.核心算法 3.Add a Baseline 4.总结 1.前言 这次介绍的基于策略梯度的Policy Gradient的算法属实比之前的算法没那么好理解,笔者看完莫烦教程之后还是有 ...

  9. 重温强化学习之策略梯度算法

    1.介绍 这里仍考虑无模型的方法:策略是从值函数中导出的,使用贪婪的方法导出最优策略,使用e贪婪策略导出行为策略,直接参数化策略                            考虑之前强化学习 ...

最新文章

  1. oc-29-可变数组
  2. C++ SSE运算例子
  3. [转]SQL2005后的ROW_NUMBER()函数的应用
  4. Python基础教程:list和tuple
  5. 高效地加载图片(一) 高效地加载大图
  6. 「客户成功故事」OneAPM 助力网上办事大厅构建阳光、高效、安全的政务服务平台...
  7. 微软确定 Win10 付费才能玩 还能不能愉快玩耍?
  8. 再搞75块单片机开发板!
  9. 前端只是切图仔?来学学给开发人看的UI设计
  10. 22、mysql主键自增值和偏移量的查看和修改
  11. [iOS]利用Appicon and Launchimage Maker生成并配置iOSApp的图标和启动页
  12. 大数据量下 PageHelper 分页查询性能问题的解决办法
  13. devops开发运维一体化_进阶 | 中国电信系统集成公司:100% 应用 DevOps 理念,做好企业级行业应用...
  14. 如何写一个脚本(附送一个脚本)
  15. 最新二次开发知宇自动发卡系统源码/全网对接/功能齐全
  16. IOS pushVIewController失败
  17. 高速公路自动驾驶测试场景库
  18. 3-Coloring(奇偶涂色)
  19. 相关算法---字符串
  20. JS流程控制语句 反反复复(while循环) 和for循环有相同功能的还有while循环, while循环重复执行一段代码,直到某个条件不再满足。...

热门文章

  1. c语言控制倒车雷达系统设计,超声波倒车雷达系统的设计方案.doc
  2. 深入理解Java虚拟机(第三版)--经典垃圾收集器
  3. 基于android平台多媒体播放器的设计与实现,基于Android的多媒体音乐播放器设计论文...
  4. 西电高数上册期末考试题
  5. 华为EMUI10更加面向用户 定位时尚优雅
  6. 《GitHub入门与实践》读书笔记
  7. java基于springboot+vue的企业公司员工人事管理系统 nodejs 前后端分离
  8. 新生代、老生代垃圾收集器总结
  9. axios是干什么的
  10. 连接Linux服务器下Oracle数据库提示:ORA-12541: TNS: 无监听程序