Q-learning、DQN 及 DQN 改进算法都是基于价值(value-based)的方法
基于策略(policy-based)的方法
假设目标策略$\pi_{\theta}$是一个随机策略,并且处处可微,其中$\theta$是对应的参数
可以用一个线性模型或者神经网络模型来为一个策略函数建模,输入某个状态,然后输出一个动作的概率分布。
目标是寻找一个最优策略并最大化这个策略在环境中的期望回报。 将策略学习的目标函数定义为:
$J(\theta)=\mathbb{E}{s_0}\left[V^{\pi{\theta}}(s_0)\right]$
对目标函数求梯度用来更新策略
$\nabla_{\theta} J(\theta) \propto \sum_{s \in \mathcal{S}} \nu^{\pi_{\theta}}(s) \sum_{a \in \mathcal{A}} Q^{\pi_{\theta}}(s, a) \nabla_{\theta} \pi_{\theta}(a \mid s)$
$=\sum_{s \in \mathcal{S}} \nu^{\pi_{\theta}}(s) \sum_{a \in \mathcal{A}} \pi_{\theta}(a \mid s) Q^{\pi_{\theta}}(s, a) \frac{\nabla_{\theta} \pi_{\theta}(a \mid s)}{\pi_{\theta}(a \mid s)}$