强化学习之确定性策略网络和随机策略网络

强化学习当中策略可以分为随机策略和确定性策略两类。

1 确定性策略

确定性策略是输入一个状态s,策略会给出一个确定的动作a,可以用以下形式表示。u表示的是确定性策略。t时刻的状态写作st。t时刻在st状态下采取的动作为at。
在这里插入图片描述
实现时,只需要建立一个神经网络,输入状态,输出一个确定的动作就行。
在这里插入图片描述

使用了确定性策略的算法有:DDPG、TD3。
DQN中的目标策略一般也是贪婪的确定性策略。

2 随机策略

随机策略是输入一个状态s,输出的是动作分布。随机策略通常用π表示。对于st条件下,每一个动作都是以概率被选取。
在这里插入图片描述

随即策略可以根据动作是连续的还是离散的进行分类。连续动作是指动作可以连续取值,比如说,动作可以是力,力的数值可以去连续的数值,一般连续动作的取值是无法穷举的。而离散的动作比如在玩打飞机的时候,动作是上,下,左,右这种可以穷举的值。
离散动作对应的随机策略称为分类策略
连续动作对应的随机策略称为对角高斯策略

2.1 分类策略

分类策略由于动作是离散的,可以穷举,因此我们可以直接定义一个输出所有动作概率的神经网络。
构建神经网络。
比如离散动作是上、下、左、右。于是,可以建立如下神经网络。输入状态,输出4个动作对应的概率。
其中P(上)+P(下)+P(左)+P(右)= 1
在这里插入图片描述

2.2 对角高斯策略

假如我们动作的是力。那么就无法按上述神经网络一样构造了。因为动作无法列举出来。因此,通常我们会使用高斯分布。因为只需要均值和标准差就能确定一个高斯分布。因此,我们可以利用神经网络输出均值。我们又可以根据标准差如何获取分成以下两种情况。
(1)标准差不使用关于状态s的函数,而是独立的参数。(TRPO 和 PPO采样的是这种实现方式)
(2)标准差是关于状态s的函数,这时,我们可以在输出均值的神经网络的输出层,增加一个输出值,输出标准差。
我们需要注意的是,无论上面那种方法,虽然我们表述的时候说的是输出标准差,实际操作的时候,我们输出的是标准差的对数值。因为标准差一定是正数,对于神经网络网络来说,要去保证输出的标准差是正数就需要增加额外的约束条件,但是假如我们输出的是log标准差,那么神经网络输出的就可以是任意实数了,输出之后,我们只需要去一个e的指数,就能还原标准差。
下面假设一个一维动作的情况下,构建的神经网络如下。(对于多维,就是一堆均值,以及协方差矩阵的值)
在这里插入图片描述

  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
确定性策略随机策略在选择动作的方式上有所不同。确定性策略是在给定状态下,直接输出一个确定的动作。也就是说,对于相同的状态,确定性策略总是选择相同的动作。这种策略可以通过建立一个神经网络,输入状态,输出一个确定的动作来实现。\[3\] 而随机策略则是在给定状态下,根据一定的概率分布随机选择一个动作。随机策略可以根据动作是连续的还是离散的进行分类。对于离散动作,随机策略称为分类策略,它可以从可穷举的动作集合中随机选择一个动作。而对于连续动作,随机策略称为对角高斯策略,它可以从连续的动作空间中按照高斯分布随机选择一个动作。\[2\] 因此,确定性策略随机策略的区别在于选择动作的方式,确定性策略总是选择相同的动作,而随机策略根据概率分布随机选择动作。 #### 引用[.reference_title] - *1* [on-policy与off-policy;确定性策略随机策略](https://blog.csdn.net/weixin_43483381/article/details/118114149)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [强化学习确定性策略网络随机策略网络](https://blog.csdn.net/weixin_43897187/article/details/111822903)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值