强化学习笔记:随机高斯策略

1 自由度是1的情况

  • 自由度是1,也就是说动作a是实数,动作空间A是实数集R的一个子集。
  • 我们记动作的均值为μ(s),标准差为σ(s),于是我们可以用正态分布的概率密度函数作为策略函数:\pi(a|s)=\frac{1}{\sqrt{2\pi} \cdot \sigma(s)} \cdot \exp(\frac{[a-\mu(s)]^2}{2 \cdot \sigma ^2(s)})
  • 假如我们知道函数μ(s)和σ(s)的解析式,那么我们可以用以下几步做控制(做控制——找agent需要执行的动作a):
    • 观测到当前状态s,预测均值\hat{\mu}=\mu(s),标准差\hat{\sigma}=\sigma(s)
    • 从正态分布中做随机抽样:a \sim N(\hat{\mu},\hat{\sigma}^2) 
    • 智能体执行动作a
  • 一个很自然的想法,就是用神经网络来近似μ(s)和σ(s)
    • 在实践中,我们不是直接近似标准差σ,而是近似方差对数\rho(s;\theta)= \ln \sigma^2

在均值网络和方差对数网络下,我们的策略网络为:

\pi(a|s;\theta)=\frac{1}{\sqrt{2\pi\cdot exp[\rho(s;\theta)]} } \cdot \exp(\frac{[a-\mu(s;\theta)]^2}{2 \cdot exp[\rho(s;\theta)]})

2 随机高斯策略网络

假设动作是d维向量,那么此时μ(s;θ)和ρ(s;θ)都是d维向量。

用标量a_i表示动作向量a的第i个元素。

\mu_i(s;\theta),\rho_i(s;\theta)分别表示μ(s;θ)和ρ(s;θ)的第i个元素。

此时我们用多元正态分布的概率密度函数作为策略网络:

\pi(a|s;\theta)=\prod_{i=1}^d \frac{1}{\sqrt{2\pi\cdot exp[\rho_i(s;\theta)]} } \cdot \exp(\frac{[a_i-\mu_i(s;\theta)]^2}{2 \cdot exp[\rho_i(s;\theta)]})

——>做控制的时候,只需要μ(s;θ)和ρ(s;θ)即可

做训练的时候,我们需要引入辅助网络f(s,a;θ) 

它的具体定义如下

(它的 可训练参数都是μ(s;θ)和ρ(s;θ)中的参数)

 

 把\pi(a|s;\theta)=\prod_{i=1}^d \frac{1}{\sqrt{2\pi\cdot exp[\rho_i(s;\theta)]} } \cdot \exp(\frac{[a_i-\mu_i(s;\theta)]^2}{2 \cdot exp[\rho_i(s;\theta)]})代入,不难发现:

 

 2.1 训练过程

 在强化学习笔记:policy learning_UQI-LIUWJ的博客-CSDN博客我们知道

 将10.3代入,于是有:

 

 所以训练过程如下:

  • 搭建均值网络 µ ( s ; θ ) 、方差对数网络 ρ ( s ; θ ) 、辅助网络 f ( s, a ; θ )  
  • 让智能体与环境交互,记录每一步的状态、动作、奖励,并对参数 θ 做更新:
    • 观测到当前状态 s,计算均值、方差对数、方差
    •  

和 强化学习笔记:policy learning_UQI-LIUWJ的博客-CSDN博客问题一样,如何近似Q_\pi(s,a)是一个问题,同样地,我们可以用REINFORCE和Actor-critic

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UQI-LIUWJ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值