当前位置: 首页 > news >正文

【深度强化学习 DRL 快速实践】异步优势演员评论员算法 (A3C)

在这里插入图片描述

Asynchronous Advantage Actor-Critic A3C (2016, DeepMind)

异步优势演员评论员算法 (A3C): 继承 actor-critic 的优势,同时通过异步多线程 (团队作战) 加速了训练过程

  • model-free, on-policy, actor-critic, stochastic 策略
核心改进点说明
异步并行训练 – Asynchronous (无经验回放)通过多个异步 agent 并行采样,打破数据相关性,提升训练效率 ; 并异步更新共享的全局网络,减少了训练过程中的延迟和等待
优势函数 – Advantage通过计算 A ( s t , a t ) = R t − V ( s t ; θ v ) A(s_t, a_t) = R_t - V(s_t; \theta_v) A(st,at)=RtV(st;θv) 来减小策略梯度的方差
熵正则化项(Entropy Regularization)引入熵正则项 H ( π ) H(\pi) H(π),鼓励策略网络保持多样性,增强探索性,避免过早收敛到局部最优

A3C 网络更新

Critic 网络更新: θ v \theta^v θv

Critic 通过最小化价值函数的损失来学习 (不熟悉 TD 的先看专栏下对应的那篇~):

L value = ( r t + γ V ( s t + 1 ) − V ( s t ) ) 2 L_{\text{value}} = ( r_t + \gamma V(s_{t+1})- V(s_t))^2 Lvalue=(rt+γV(st+1)V(st))2

Actor 网络更新: θ μ \theta^\mu θμ

Actor 通过最大化期望回报来更新,使用 Advantage 来减少 PG 的方差 (不熟悉 policy gradient 的先看专栏下对应的那篇~):

L policy = − log ⁡ π ( a t ∣ s t ) A ( s t , a t ) L_{\text{policy}} = - \log \pi(a_t | s_t) A(s_t, a_t) Lpolicy=logπ(atst)A(st,at)

其中 Advantage A ( s t , a t ) A(s_t, a_t) A(st,at) 可以估计为:

A ( s t , a t ) = r t + γ V ( s t + 1 ) − V ( s t ) A(s_t, a_t) = r_t + \gamma V(s_{t+1})- V(s_t) A(st,at)=rt+γV(st+1)V(st)

总的损失函数

通常,A3C 的总损失函数包含三部分:

  • 策略损失(Policy Loss)
  • 价值损失(Value Loss)
  • 熵正则化项(Entropy Loss,用来增加探索性)

完整的目标函数为:

L = L policy + c 1 L value − c 2 H ( π ( s t ) ) L = L_{\text{policy}} + c_1 L_{\text{value}} - c_2 H(\pi(s_t)) L=Lpolicy+c1Lvaluec2H(π(st))

其中:

  • H ( π ) H(\pi) H(π) 是策略的熵,鼓励策略探索
  • c 1 , c 2 c_1, c_2 c1,c2 是权重系数

参考资料:A3C详解


http://www.mrgr.cn/news/100240.html

相关文章:

  • MySQL数据库(基础篇)
  • 【计算机视觉】CV实战项目 - 深入解析基于HOG+SVM的行人检测系统:Pedestrian Detection
  • VScode远程连接服务器(免密登录)
  • 【数据可视化-24】巧克力销售数据的多维度可视化分析
  • Mysql日志undo redo binlog与更新一条数据的执行过程详解
  • 【深度强化学习 DRL 快速实践】Value-based 方法总结
  • RefFormer论文精读
  • 使用 Python 项目管理工具 uv 快速创建 MCP 服务(Cherry Studio、Trae 添加 MCP 服务)
  • 蓝耘平台介绍:算力赋能AI创新的智算云平台
  • (三) Trae 调试C++ 基本概念
  • 开发并发布一个属于自己的包(npm)
  • fps项目总结:生成武器子弹丧尸攻击
  • 从FP32到BF16,再到混合精度的全景解析
  • TortoiseGit使用图解
  • 《Learning Langchain》阅读笔记8-RAG(4)在vector store中存储embbdings
  • 如何使用URDF搭建双臂UR移动机器人,并在RViz中可视化
  • 【MySQL】MySQL索引与事务
  • 【计算机视觉】CV实战项目 - 基于YOLOv5的人脸检测与关键点定位系统深度解析
  • 张 LLM提示词拓展16中方式
  • 【中级软件设计师】函数调用 —— 传值调用和传地址调用 (附软考真题)