强化学习算法伪代码

在这里插入图片描述

基础公式

来源
累计回报:
在t时刻状态下选择行为所获得累计回报,其中每个R都是个随机变量。
在这里插入图片描述
状态价值函数:
状态s下的累计回报是多维随机变量,服从pi分布,因此使用期望累计回报表示该状态的价值。
在这里插入图片描述
其贝尔曼方程为:
在这里插入图片描述
状态-行为价值函数:
状态行为价值函数相比状态价值函数其区别在于行为已经选定。
在这里插入图片描述
其贝尔曼方程为:
在这里插入图片描述
状态价值与状态-行为价值联系:
状态-行为价值只是状态价值确定一个行为后的分支。
在这里插入图片描述
状态-行为价值选定行为后会得到reward,此外该行为下有多种可能的下一状态。
在这里插入图片描述
互相代入后得到:
在这里插入图片描述

在这里插入图片描述
最优价值函数:
在这里插入图片描述
在价值函数更新时目标值构建有所不同:
在这里插入图片描述
在这里插入图片描述
因为A已经确定,回报因此确定:
在这里插入图片描述
在这里插入图片描述
Value-Based解决方案:
动态规划方法(DP)使用了上述的推导,使用bootstrapping(利用后继状态的价值估计当前价值),不过动态规划方法需要知道模型的状态转移概率P,因此需要模型可知。
在这里插入图片描述
但模型未知时可考虑蒙特卡罗方法(MC)利用经验平均估计期望的值函数。即原本的状态价值是累计回报的期望,可以使用多次实验的累计回报均值来代表。不过因为G是实验的累计回报,需要实验结束(回合更新)后才能学习。
在这里插入图片描述
时序差分方法(TD)综合二者优点(单步更新+无模型)。使用R+rV(目标值)代替G。
在这里插入图片描述
三种方法的区分可以以下公式分析,对于DP算法,其更新的目标值在公式(3)中,因为状态转移概率P已知,所以可以求解出期望。不过 v ( s t + 1 ) v ( s t + 1 ) v ( s t + 1 ) v(st+1)v(st+1) v(s_{t+1}) v(st+1)v(st+1)v(st+1)J(θ)=m1j=1mQ(si,ai,w),也就是想要在s状态下选择动作a,那么a的Q值就要尽可能的大。再对目标函数采用链式法则求导(对行为a,对参数theta)即可优化actor模型。

其他

几个比较经典的强化学习算法,以及在NLP中的应用
深度强化学习落地方法论
reward设计:
请问:强化学习中对于reward奖励值设定,对算法有什么影响,有没有相关的论文或者资料?
强化学习奖励函数塑形简介(The reward shaping of RL)
强化学习中reward稀疏和无法获取问题解决方案

trick:
强化学习领域有哪些巧妙的想法?
深度强化学习落地方法论(7)—— 训练篇

疑问

强化学习中,对于连续的动作,value-based是无能为力的?
强化学习,DPG是首次处理连续动作空间的论文吗,PG本身还只是输出动作而不是连续动作对吧?
深度强化学习(六):连续动作空间的问题

策略迭代算法包括策略评估和策略改进两个步骤。
策略评估:给定策略,通过数值迭代算法不断计算该策略下的值函数,直至收敛。
策略改进:利用收敛的值函数和贪婪策略得到新的策略;

几个概念:
对于REINFORCE方法,链接
1、如果采用均值方差的方式则为随机性策略,如果对输出分布采样,则为on-policy的方法;如果行为策略和评估策略不同则为off-policy的方法(需要重要性权重)。
2、如果采用输出行为值的方式则为确定性策略,由于确定性策略无法采样,因此需要用off-policy的方法解决探索问题。
3、上述两种方法前一种可以添加AC结构,后一种由于使用到q值网络,必须是AC结构。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值