策略梯度学习
强化学习另外一个分支
基于环境是否已知,基于策略来分有on、off policy
1.策略梯度思想
2.Reinforce算法
使用基于值函数的学习需要和环境交互,传统普通的 基于Q表,通过对应的target更新方式,采用绝对贪婪策略确定策略。
与环境交互得到值函数,输入神经网络再取到Q值比较大的地方,传统的Q-learning和DQN都是通过最优值函数。能否跳过值函数,直接获得策略
Value-based to policy-based parametrise the policy πθ(s,a)=P[a|s,θ] 直接输出概率,基于策略学习的基本思想,基于值函数的学习,策略改进基于actor-critic 两种策略都有
策略学习优点:便于收敛,直接学习策略,基于值函数的学习,value-base基于值函数收敛;effective in high-dimensional or continuous action spaces;can learn stochastic policies
对于连续空间,输出Q值;若解平面有局部最优解,此时随机性可能缺乏,出现bug
缺点:
容易陷入局部最优解,因为直接更新策略,策略不断变化,第二次迭代,不断震荡,容易进入局部最优;评价不高效
策略函数如何近似?类似于DQN,采用神经网络近似,通过神经网络近似策略function以某种概率执行某种策略
通过神经网络输出一个概率,最后一层选用 激活函数softmax,对节点取平均值,只能归一化,4个点控制四个点的动作,动作是连续的,这四个点的范围是连续的动作值情况,最后一层激活函数是什么?设置成四维,每一节点直接输出。
总体目标总体return J 最大化,θ 嗯从德胜thepolicy influencesreward J(θ)=∑P(γ,θ)R(γ)
目标给出策略 policy πθ s,a
如何转换?in episodic environments we can use the start value J1(θ)=Vπ(s1)=Eπ[V1]
在continuing environments use averagevalue:
JavV(θ)=∑dπθ(s)Vπθ(s)
the average reward per time step JavR(θ)=....Rsa dπθS stationarydistribution of markov chain基于策略状态的分布
目标Jθ最大化,离散时候一般使用reward找到初始值,
首先初始化参数
收集episode 记录return
更新最佳策略和Gbest 量
重复直到环境solved
增加随机噪声,根据爬山法记录G new>Gbest then: θbest<-θnew, Gbest<- Gnew;类似算法称为 black-box optimization 黑箱优化算法
策略梯度如何更新?
Jθ目标函数
得到θ=αΔJθ
policy gradient 基本思想 以及 alpha step-size parameter
通过神经网络直接输入策略,通过J θ学习到策略,得到最优,最优化求函数最大值的问题。