强化学习(TD3)

TD3——Twin Delayed Deep Deterministic policy gradient 双延迟深度确定性策略梯度

TD3是DDPG的一个优化版本,旨在解决DDPG算法的高估问题

优化点:

双重收集:采取两套critic收集,计算两者中较小的值,从而克制收集过估量成绩。

DDPG源于DQN,DQN源于Q_learning,这些算法都是通过估计Q值来寻找最优的策略,在强化学习中,更新Q网络的目标值target为:y=r+\gamma max_{a^{'}}Q\left ( s^{'}, a^{'} \right ),因为样本存在噪声\epsilon,所以真实情况下,有误差的动作价值估计的最大值通常会比真实值更大:E_{\epsilon }\left [ max_{a^{'}}\left ( Q\left ( s^{'},a^{'} \right )+\epsilon \right ) \right ]\geq max_{a^{'}}Q\left ( s^{'},a^{'} \right )

这就不可避免的降低了估值函数的准确度,由于估值方法的计算依据贝尔曼方程,即使用后续状态对估计值进行更新,这种性质又加剧了精确度的下降,在每一次更新策略时,使用一个不准确的估计值将会导致错误被累加,这些贝雷架的错误会导致某一个不好的状态被高估,最终导致策略无法被优化到最优,并使算法无法被收敛。

目标策略平滑正则化:在计算目标值时,加上扰动,从而使得评价更加准确。

延迟更新:让目标网络与当前网络更新不同步,当前网络更新d次之后再对traget网络进行更新;critic更新多次后,actor更新,critic的更新频次多于actor的

伪代码:

采用随机参数\theta _{1}\theta _{2}\phi初始化critic网络Q_{\theta _{1}}Q_{\theta _{2}}以及actor网络\pi _{\phi }

初始化目标critic、actor网络:\theta _{1}^{'}\leftarrow \theta _{1}\theta _{2}^{'}\leftarrow \theta _{2}\phi ^{'}\leftarrow \phi

初始化回放缓存区R

for t=1 to T do

        选择动作并添加探索噪声a=\pi _{\phi }\left ( s \right )+\epsilon\epsilon服从某种分布,执行动作后获得奖励r和新的状态s^{'},将经验值\left ( s, a, r, s^{'} \right )存入回放缓存区

        从回放缓存区中抽取小批量样本数据:

                \tilde{a}\leftarrow \pi _{\phi ^{'}}\left ( s^{'} \right )+\epsilon

                y\leftarrow r+\gamma min_{i=1,2}Q_{\theta _{i}^{'}}\left ( s^{'},\tilde{a} \right )

        更新critic网络参数:\theta _{i}\leftarrow argmin_{\theta _{i}}N^{-1}\sum_{}^{}\left ( y-Q_{\theta _{i}} \left ( s, a \right )\right )^{2}

        如果 t mod d then

                通过确定性策略梯度更新actor网络参数:

        ​​​​​​​        \triangledown _{\phi }J\left ( \phi \right )=N^{-1}\sum \triangledown _{a}Q_{\theta _{1}}\left ( s,a \right )|_{a=\pi _{\phi \left ( s \right )}}\triangledown _{\phi }\pi _{\phi }\left ( s \right )

                更新目标网络参数:

                \theta_{i}^{'}\leftarrow \tau \theta _{i}+\left ( 1-\tau \right )\theta _{i}^{'}

                \phi ^{'}\leftarrow \tau \phi _{i}+\left ( 1-\tau \right )\phi ^{'}

        end for

end for

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/689023.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第一个 Angular 项目 - 动态页面

第一个 Angular 项目 - 动态页面 使用的所有技巧都在下面的笔记里: [Angular 基础] - 数据绑定(databinding) [Angular 基础] - 指令(directives) 以上为静态页面,即不涉及到跨组件交流的内容 以下涉及到组件内的沟通,从这开始数据就“活”…

Leetcode 3040. Maximum Number of Operations With the Same Score II

Leetcode 3040. Maximum Number of Operations With the Same Score II 1. 解题思路2. 代码实现 题目链接:3040. Maximum Number of Operations With the Same Score II 1. 解题思路 这一题的话思路就是一个动态规划,显然对于每一种情况都有3种可能的…

才气系统与逻辑系统道装实现的比较

才气系统与逻辑系统道装实现的比较 道装道装思想简介烛火流形学习引擎,流形学习的引入王船山信息熵,简称王船山熵;凝聚态数学可计算函数科学方法道装由来琴语言简介逻辑与才气的逐层比较表格(王船山熵) 道装 道装思想…

OpenCV 入门讲解

OpenCV 入门讲解 OpenCV(Open Source Computer Vision Library) 是一个开源的计算机视觉库,它提供了许多高效实现计算机视觉算法的函数,从基本的滤波到高级的物体检测都有涵盖。OpenCV 使用 C/C 开发,同时也提供了 Pyt…

短链接系统测试报告

目录 项目背景 项目功能 自动化测试 总结 项目背景 随着互联网的发展,链接(URL)变得越来越长且复杂,这不仅影响用户体验,还可能由于字符限制导致在某些平台或应用中无法完整显示。为了解决这一问题,我…

Ubuntu22.04LTS编译Frida历史版本,环境配制及细节调整

经常使用Frida的朋友们可能会遇到Frida的各种问题需要自定义的,而这时候Frida的本地编译就显得很重要了。 最近一位朋友发现使用Frida14/15/16版的server只能连拉一定数量的设备,超过了frida-device-manager便不能连接设备。 实现没有办法,…

综合练习

目录 查询每个员工的编号、姓名、职位、基本工资、部门名称、部门位置 确定要使用的数据表 确定已知的关联字段 查询每个员工的编号、姓名、职位、基本工资、工资等级 确定要使用的数据表 确定已知的关联字段 查询每个员工的编号、姓名、职位、基本工资、部门名称、工资…

⭐北邮复试刷题589. N 叉树的前序遍历__DFS (力扣每日一题)

589. N 叉树的前序遍历 给定一个 n 叉树的根节点 root ,返回 其节点值的 前序遍历 。 n 叉树 在输入中按层序遍历进行序列化表示,每组子节点由空值 null 分隔(请参见示例)。 示例 1: 输入:root [1,null,…

数据结构与算法:二叉树

一、二叉树的链式存储 树结点数据结构 typedef char BiElemType; typedef struct BiTNode{BiElemType c;struct BiTNode *lchild;struct BiTNode *rchild; }BiTNode,*BiTree;树中任何一个结点都是一个结构体,它的空间是通过malloc申请出来的 二、二叉树层次建树 …

<网络安全>《38 网络攻防专业课<第四课 - windows常见漏洞>》

1 系统漏洞概述 系统漏洞概述: 漏洞是指应用软件或操作系统软件在逻辑设计上的缺陷,或在编写时产生的错误。 漏洞是硬件、软件、协议的具体实现或系统安全策略上存在的缺陷,从而可以使攻击者能够在未授权的情况下访问或破坏系统。 2 Window…

JS面向对象:六.原型链

原型链是 JavaScript 中实现对象之间继承关系的一种机制。在 JavaScript 中,每个对象都有一个指向另一个对象的链接,这个链接被称为原型。当试图访问一个对象的属性或方法时,如果该对象本身没有这个属性或方法,JavaScript 就会沿着…

数据安全之认识数据资产管理平台

文章目录 一、什么是数据资产二、什么是数据资产管理平台1、什么是数据资产管理平台2、为什么需要数据资产管理平台 三、数据资产管理平台的主要功能四、数据资产管理平台的工作原理五、数据资产管理平台的应用场景六、安全资产管理平台与数据资产管理平台的区别与关系1、安全资…

华为配置旁挂二层组网直接转发示例

配置旁挂二层组网直接转发示例 组网图形 图1 配置旁挂二层组网直接转发示例组网图 业务需求组网需求数据规划配置思路配置注意事项操作步骤配置文件扩展阅读 业务需求 企业用户通过WLAN接入网络,以满足移动办公的最基本需求。且在覆盖区域内移动发生漫游时&#xff…

已解决ModuleNotFoundError: No module named ‘cv2’异常的正确解决方法,亲测有效!!!

已解决ModuleNotFoundError: No module named ‘cv2’异常的正确解决方法,亲测有效!!! 文章目录 问题分析 报错原因 解决思路 解决方法 总结 在处理图像和视频等计算机视觉任务时,OpenCV是一个非常强大的库。然而…

数据库:存储、管理和分析数据的基石——数据库的介绍,分类,作用和特点

引言: 在现代信息时代,数据的管理和存储成为各个领域中不可或缺的一部分。数据库技术应运而生,它提供了一种结构化方式来组织、存储和管理数据。本文将详细介绍数据库的概念,并对常见的数据库进行分类,探讨它们的作用、…

图像处理之《隐写网络的隐写术》论文阅读

一、文章摘要 隐写术是一种在双方之间进行秘密通信的技术。随着深度神经网络(DNN)的快速发展,近年来越来越多的隐写网络被提出,并显示出良好的性能。与传统的手工隐写工具不同,隐写网络的规模相对较大。如何在公共信道上秘密传输隐写网络引起…

Linux colrm命令教程:如何移除文本文件中的指定列(附实例详解和注意事项)

Linux colrm命令介绍 colrm(column remove)命令在Linux中用于编辑源代码文件、脚本文件或常规文本文件中的文本。此命令可以从文件中移除选定的列。在这里,列被定义为一行中的单个字符。它始终从索引1开始,而不是0。 Linux colr…

anomalib1.0学习纪实-续2:三个文件夹

为了读懂程序,有三个最重要的文件夹,如下图: 正好对应四个类,如下图: 三个类的来源如下图所示: 注意,MVTec是个大类,里面用到了这里的第四个类MVTecDataset,代码如下。…

如何优雅地与ChatGPT对话?

ChatGPT已经发布了一年之久了,但你真的会使用ChatGPT吗?同一个问题,不同的问法得到的答案可能千差万别,你可以把ChatGPT当作一个知识面很广的专家,他上知天文下知地理,但他无法直接知道你的意图&#xff0c…

洛谷: P1553 数字反转(升级版)

思路: 没想到什么好办法,一步一步来。整体就是反转,删除前导/后导0,反转,删除前导/后导0。 第一次AC没过去,原因是没考虑到分数的分母前导0的情况,比如1234567890/1234567890这个样例,结果输出…