O2O:Offline–Online Actor–Critic

IEEE TAI 2024
paper

1 Introduction

一篇offline to online 的文章,有效解决迁移过程出现的performance drop。所提出的O2AC算法首先在离线阶段添加一项BC惩罚项,用于限制策略靠近专家策略;而在在线微调阶段,通过动态调整BC的权重,缓解performance drop。

2 Method

2.1 offline

离线阶段,采用BC结合确定性策略优化方法。最大化下列损失函数:
J o f f i n e ( θ ) = E ( s , a ) ∼ B [ ζ Q ϕ ( s , π θ ( s ) ) − ∥ π θ ( s ) − a ∥ 2 ] J_{\mathrm{offine}}(\boldsymbol{\theta})=\mathbb{E}_{(\boldsymbol{s},\boldsymbol{a})\sim\mathcal{B}}\left[\zeta Q_{\boldsymbol{\phi}}(\boldsymbol{s},\pi_{\boldsymbol{\theta}}(\boldsymbol{s}))-\left\|\pi_{\boldsymbol{\theta}}(\boldsymbol{s})-\boldsymbol{a}\right\|^2\right] Joffine(θ)=E(s,a)B[ζQϕ(s,πθ(s))πθ(s)a2]
其中, ζ \zeta ζ用于平衡BC以及一般policy iteration,其数值如下:
ζ = α 1 m ∑ ( s i , a i ) ∈ B ‾ ∣ Q ( s i , a i ) ∣ \zeta=\frac{\alpha}{\frac1m\sum_{(\boldsymbol{s}_i,\boldsymbol{a}_i)\in\overline{\mathcal{B}}}|Q(\boldsymbol{s}_i,\boldsymbol{a}_i)|} ζ=m1(si,ai)BQ(si,ai)α
其中 B ‾ \overline{\mathcal{B}} B表示从Buffer中采样地mini-batch, size为m

2.2 online

在线微调阶段,对确定性策略优化的损失函数表示如下
J o n l i n e ( θ ) = E ( s , a ) ∼ B [ ζ Q ϕ ( s , π θ ( s ) ) − λ ∥ π θ ( s ) − a ∥ 2 ] J_{\mathrm{online}}(\boldsymbol{\theta})=\mathbb{E}_{(\boldsymbol{s},\boldsymbol{a})\sim\mathcal{B}}\left[\zeta Q_{\boldsymbol{\phi}}(\boldsymbol{s},\pi_{\boldsymbol{\theta}}(\boldsymbol{s}))-\lambda\left\|\pi_{\boldsymbol{\theta}}(\boldsymbol{s})-\boldsymbol{a}\right\|^2\right] Jonline(θ)=E(s,a)B[ζQϕ(s,πθ(s))λπθ(s)a2]
相较于offline,损失函数增加对BC权重因子 λ \lambda λ。该数值是动态减少的,实验设置为每5k steps, 减少10%。对Q价值的更新则是类似于TD3,使用两个target网络以及延时更新。
L ( ϕ ) = E ( s , a ) ∼ B [ ( y ˉ − Q ϕ ( s , a ) ) 2 ] where  y ˉ = r + min ⁡ i = 1 , 2 Q ϕ i ˉ ( s , ′ a ′ ∼ π θ ˉ ) . \begin{aligned}L(\phi)&=\mathbb{E}_{(\boldsymbol{s},\boldsymbol{a})\sim\mathcal{B}}\left[\left(\bar{y}-Q_{\boldsymbol{\phi}}(\boldsymbol{s},\boldsymbol{a})\right)^2\right]\\\\\text{where }\bar{y}&=r+\min_{i=1,2}Q_{\bar{\boldsymbol{\phi}_i}}(\boldsymbol{s},'\boldsymbol{a}'\sim\pi_{\bar{\boldsymbol{\theta}}}).\end{aligned} L(ϕ)where yˉ=E(s,a)B[(yˉQϕ(s,a))2]=r+i=1,2minQϕiˉ(s,aπθˉ).

伪代码如下:
在这里插入图片描述

Summary

有个疑问,online阶段对策略进行更新时,采样的数据(s,a)是来自replaybuffer B \mathcal{B} B B \mathcal{B} B包含在线阶段真实交互数据以及离线数据。如果(s,a)是OOD或者质量差数据,那么此时BC项应该尽可能地不要发挥作用。简单的调整 λ \lambda λ恐怕效果不够。可以探索添在BC项再加一个指示函数自适应地判断,“异常数据”直接截断为0.

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

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

相关文章

手写分布式配置中心(二)实现分布式配置中心的简单版本

这一篇文章比较简单,就是一个增删改查的服务端和一个获取配置的客户端,旨在搭建一个简单的配置中心架构,代码在 https://gitee.com/summer-cat001/config-center 服务端 服务端选择用springboot 2.7.14搭建,设计了4个接口/confi…

物联网主机:为智能交通赋能

物联网(IoT)技术的发展为智能交通领域带来了许多创新的解决方案。而在物联网应用中,物联网主机起着关键的作用。本文将为大家介绍一款名为E6000的物联网主机,它是一种多协议、多接口的物联网主机,为智能交通系统的建设…

It is also possible that a host key has just been changed

问题:ssh失败,提示如上图 分析: ssh的key存在上图里的路径里。 解决:win10删这个文件C:\Users\admin\.ssh\known_hosts , linux删这个文件.ssh\known_hosts ,或者删除这个文件里的制定ip的那一行,例如“106.1.1.22 ecdsa-sha2-…

FreeRTOS操作系统学习——FreeRTOS工程创建

FreeROTS工程创建 详细步骤 如无特殊情况,大部人都要配置为外部高速时钟 另外,本实验使用了FreeRTOS,FreeRTOS的时基使用的是Systick,而 STM32CubeMX中默认的HAL库时基也是Systick,为了避免可能的冲突,最…

【学习】torchvision.datasets.ImageFolder()

在分类任务中,数据集文件存储往往是如下形式: - train- class1- image1.jpg- image2.jpg...- class2- image1.jpg- image2.jpg......此时,我们想要获取图片和标签,标签即为文件名(class1、class2…) 可以使…

数据链路层----滑动窗口协议的相关计算

目录 1.窗口大小的相关计算 •停等协议: •后退N帧协议: •选择重传协议: 2.信道利用率相关计算 •停等协议的信道利用率: •连续ARQ(后退N帧协议,选择重传协议)的信道利用率:…

Java 反射详解:动态创建实例、调用方法和访问字段

“一般情况下,我们在使用某个类之前已经确定它到底是个什么类了,拿到手就直接可以使用 new 关键字来调用构造方法进行初始化,之后使用这个类的对象来进行操作。” Writer writer new Writer(); writer.setName("少年");像上面这个…

no declaration can be found for element ‘rabbit:connection-factory‘

spring-mvc 配置 rabbitmq 出现问题。 我的解决方案如下: 1 找到配置文件 spring-rabbitmq.xml 我的配置文件叫:spring-rabbitmq.xml,你们按照自己的查找。 2 定位如下URI 接着 Ctrl鼠标左键 3 确定spring-rabbit-x.x.xsd 按照步骤2 &…

鸿蒙Harmony应用开发—ArkTS声明式开发(通用属性:组件标识)

id为组件的唯一标识,在整个应用内唯一。本模块提供组件标识相关接口,可以获取指定id组件的属性,也提供向指定id组件发送事件的功能。 说明: 从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容…

C++基于多设计模式下的同步异步日志系统day7(终)

C基于多设计模式下的同步&异步日志系统day7(终) 📟作者主页:慢热的陕西人 🌴专栏链接:C基于多设计模式下的同步&异步日志系统 📣欢迎各位大佬👍点赞🔥关注&#…

美易官方《盘前:美国股指期货温和走低》

美国股指期货在盘前交易中温和走低,市场情绪在美联储主席鲍威尔即将作证前显得谨慎。投资者对即将公布的证词内容充满期待,以寻求对美联储未来货币政策的更多线索。 鲍威尔即将在国会作证,这是市场关注的焦点事件之一。他的证词可能会对美元汇…

字节同事问我:我的Postman为什么连不了数据库?

postman本身没有数据库连接功能,所以用到了node.js中的xmysql实现Rest API的生成,利用postman进行请求,获取需要的数据,来做数据准备或断言。 1 安装 安装node.js:要求版本大于等于7.6 首先保证你的环境上有node.js…

【NR 定位】3GPP NR Positioning 5G定位标准解读(四)

目录 前言 6 Signalling protocols and interfaces 6.1 支持定位操作的网络接口 6.1.1 通用LCS控制平面架构 6.1.2 NR-Uu接口 6.1.3 LTE-Uu接口 6.1.4 NG-C接口 6.1.5 NL1接口 6.1.6 F1接口 6.1.7 NR PC5接口 6.2 终端协议 6.2.1 LTE定位协议(LPP&#x…

贪心算法(区间问题)

452. 用最少数量的箭引爆气球 题目(求无重复区间) 有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组 points ,其中points[i] [xstart, xend] 表示水平直径在 xstart 和 xend之间的气球。你不知道气球的确切 y 坐标。 一支弓箭可以沿着…

爬虫入门到精通_实战篇11(使用代理处理反爬抓取微信文章)_PyQuery使用

1 目标 搜狗-微信这个网址来爬取微信的文章: ps:登录后才能查看第10页之后的内容: 量翻页触发了网站的反爬虫措施,导致ip被封,需要进行解锁。 然而从doc中可以看到,请求失败的那页(状态码应…

【力扣白嫖日记】1045.买下所有产品的客户

前言 练习sql语句,所有题目来自于力扣(https://leetcode.cn/problemset/database/)的免费数据库练习题。 今日题目: 1045.买下所有产品的客户 表:Customer 列名类型customer_idintproduct_keyint 该表可能包含重复…

【Vue3】深入理解Vue中的ref属性

💗💗💗欢迎来到我的博客,你将找到有关如何使用技术解决问题的文章,也会找到某个技术的学习路线。无论你是何种职业,我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章,也欢…

MyCAT集群——MyCAT2如何配置读写分离

先搭载MySQL一主两从 192.168.20.110MyCAT192.168.20.111Master192.168.20.112slave1192.168.20.113slave2 配置就不写了,比较基础,写一下步骤 1.进入mysql配置文件或者其子配置文件,添加server_id,开启gtidgtid_modeON,enforce-gtid-cons…

个人社区 项目测试

目 录 一.背景及介绍二.功能详情三.手动测试1.编写测试用例2.测试 一.背景及介绍 该项目采用了前后端分离技术,把我们的数据保存到数据库中,操作对象是用户和个人文章编辑保存,前端的页面实现了登录,列表,编辑&#x…

学习JAVA的第十三天(基础)

目录 API之Arrays 将数组变成字符串 二分查找法查找元素 拷贝数组 填充数组 排序数组 Lambda表达式 集合的进阶 单列集合 体系结构 Collection API之Arrays 操作数组的工具类 将数组变成字符串 //将数组变成字符串char[] arr {a,b,c,d,e};System.out.println(Arra…