JoyRL_Chapter10_AC_algorithm

A2C算法通过并行化、优势函数和价值网络的结合,提高了学习速度和稳定性。它是on-policy的,利用价值算法和策略梯度的优点,缓解高方差问题。A3C则通过多进程训练进一步提升效率。
摘要由CSDN通过智能技术生成

第 10 章 Actor-Critic 算法

参考网址:https://datawhalechina.github.io/joyrl-book/#/ch10/main

作业

1. 相比于REINFORCE算法,A2C主要的改进点在哪里?为什么能提高速度?

(1) A2C相对于REINFORCE的改进点:

  • 并行化: A2C(Advantage Actor-Critic)算法引入了并行化的思想,允许多个智能体并行地与环境交互。每个智能体都有自己的策略网络和值函数网络,这样可以更有效地利用计算资源,提高学习速度。
  • 基于优势函数: A2C使用优势函数(Advantage Function),通过减去基准值来估计每个动作的优势,进而更准确地指导策略更新。这有助于降低方差,提高算法的稳定性和学习效率。
  • 价值网络: A2C使用了一个价值网络,同时学习策略和值函数,与REINFORCE中的单一策略网络相比,这使得A2C能够更好地利用环境中的信息,提高学习效率,缓解了REINFORCE高方差的问题(但不可避免)。

(2) A2C相较于REINFORCE的改进使得它更适合处理高维度、连续动作空间的问题,同时更有效地利用计算资源,提高了学习速度和稳定性。

2. A2C算法是on-policy的吗?为什么?

(1) A2C是on-policy算法。
(2) 原因:on-policy算法指的是在训练过程中使用收集的样本数据更新策略,并且在更新过程中只使用当前策略的数据。A2C的更新步骤依赖于当前策略的样本数据,因此被认为是on-policy算法。这是因为A2C使用的是当前策略的梯度来更新策略参数,而不是使用从旧策略中采样得到的数据,这确保了更新是相对稳定和一致的。
在A2C中,每个智能体在一次更新步骤中与环境交互,收集数据,然后使用这些数据进行策略和值函数的更新。这种on-policy性质有助于提高算法的稳定性,但也可能导致样本利用效率较低。

学习收获:

  1. AC方法的优点:
  • 单独使用价值算法的缺点(如下图)

这里是引用

  • 单独使用策略梯度算法的缺点(如下图)

在这里插入图片描述

但是AC方法是将二者结合起来,能同时兼顾两者的优点,并且甚至能缓解两种方法都很难解决的高方差问题。仔细分析一下两者高方差的根本来源,策略梯度算法是因为直接对策略参数化,相当于既要利用策略去与环境交互采样,又要利用采样去估计策略梯度,而基于价值的算法也是需要与环境交互采样来估计值函数的,因此也会有高方差的问题。
结合之后,Actor部分还是负责估计策略梯度和采样,但Critic即原来的值函数部分就不需要采样而只负责估计值函数了,并且由于它估计的值函数指的是策略函数的值,相当于带来了一个更稳定的估计,来指导Actor的更新,反而能够缓解策略梯度估计带来的方差。当然尽管 AC算法能够缓解方差问题,但并不能彻底解决问题。

  1. AC算法的基本用架构
    Actor与环境交互采样,然后将采样的轨迹输入Critic网络,Critic网络估计出当前状态-动作对的价值,然后再将这个价值作为Actor网络的梯度更新的依据。
    在这里插入图片描述
  2. AC改进
    (1)A2C
    在普通的AC方法上引入了优势函数。
    在这里插入图片描述
    优势函数相当于动作价值函数减去了一个基线,这个基线可以自由设计,但是通常我们会选择状态价值函数作为基线,减去这个基线会让梯度估计更稳定。
    (2)A3C

原先的
A2C算法相当于只有一个全局网络并持续与环境交互更新。而A3C算法中增加了多个进程,每一个进程都拥有一个独立的网络和环境以供交互,并且每个进程每隔一段时间都会将自己的参数同步到全局网络中,这样就能提高训练效率。这种训练模式也是比较常见的多进程训练模式,也能用于其他算法中,也包括前面讲到的基于价值的算法。
在这里插入图片描述

代码解析下次更新

  • 18
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值