强化学习论文(A3C)

介绍:

  • 核心思想主要是利用多线程的方法,让多个环境并行的运行,在探索性策略的情况下,让agent能够在每一个step都有更多的探索性,尽快找到最优策略。
  • 抛弃DQN,DDPG,等算法中的replay buffer,采用on-line的方式学习。replay buffer会将数据存储起来供学习,其数据来源于旧的policy,on-line的方式的数据来自于刚刚更新的新policy。
  • 在多线程的情况下,每个agent有独立的环境,也面对不同的state,在多核cpu上,每个agent以不同的策略独立探索,大大增加了数据的多样性,同时数据天然的是相互独立的。
  • 网络参数是在线程之间异步更新的,而且是Lock free的,不需要互斥。

该方法可以用在不同的算法上,论文中介绍了四种算法的异步应用:

Async Q-Learning和Async n-Step Q-Learning:

在主线程上维护一个统一的global net,每个线程有独立的local net。当线程内满足terminal或特定步数后,更新local net。当所有线程的总步数满足特定条件后,将local net的参数复制给global net。

在n-step Q-Learning中,线手机n步的数据,再更新参数。这里n-step的最后一步的return计算方式和中间步骤的计算方式不太一样,最后一步是

而中间步是:

且需要每一步累计梯度。

Async one-Step SARSA和Async n-Step SARSA

和Async Q-Learning基本差不多,主要是把TD-target从变成了

Async Advantage Actor-critic

一个global的公共critic用来输出q-value,一个global的公共actor用来输出policy

这里也采用了n-step的方法,先收集一部分数据。也因此在更新过程中,它的优势函数就用

代替了标准A2C算法中的

同时,将策略的entropy添加的目标函数中,可以组织网络过早的收敛到次优解,从而改善探索性。包含entropy的目标函数是:

其中H就是策略的entropy,超参数β控制熵正则化项的强度。

相关推荐
杜哥无敌1 分钟前
Obsidian Copilot V4 与 Miyo 架构解析:语义检索、向量模型配置与最佳实践
人工智能
Zhao-Jichao2 分钟前
AI Prompting for Everyone 课程笔记 - 04 联网搜索资源 Web Search Sources
人工智能·笔记
呆呆敲代码的小Y8 分钟前
企业 AI 读文档,难在哪里?从一张跨页表格说起
人工智能·产品
zwc321043205513 分钟前
Day 2:图像内存、数据类型与stride
c++·人工智能·opencv·算法·计算机视觉
ADAI_Bowen21 分钟前
个人设计师用户心得:ADAI如何成为我的“第二大脑”
人工智能
一次调频AGCAVC22 分钟前
一次调频系统控制柜的组成及一次调频装置主机功能详述
人工智能·嵌入式硬件
虎鲸不是鱼36 分钟前
【虎鲸养殖手册 B007】命令执行的安全细节:白名单不是防弹衣
人工智能·安全·agent·智能体·自进化agent
ZhengEnCi44 分钟前
为什么别人的 Skill 不适合你:从「拿来就能用」到「改成自己的流程」的适配方法
人工智能·agent
一切皆是因缘际会1 小时前
当模型足够大
人工智能·深度学习·机器学习