策略梯度算法的关键公式是策略梯度定理,它表达了策略参数对策略性能的影响。策略梯度定理可以表示为:
?
θ
J
(
θ
)
=
E
τ
~
p
(
τ
;
θ
)
[
∑
t
=
0
T
?
θ
log
?
π
θ
(
a
t
∣
s
t
)
A
π
(
s
t
,
a
t
)
]
\nabla_\theta J(\theta)=\mathbb{E}_{\tau \sim p(\tau ; \theta)}\left[\sum_{t=0}^T \nabla_\theta \log \pi_\theta\left(a_t \mid s_t\right) A^\pi\left(s_t, a_t\right)\right]
?θ?J(θ)=Eτ~p(τ;θ)?[t=0∑T??θ?logπθ?(at?∣st?)Aπ(st?,at?)]
其中:
J
(
θ
)
J(\theta)
J(θ) 是策略的期望回报, 也称为性能函数。
θ
\theta
θ 是策略的参数。
τ
\tau
τ 表示一个轨迹 (trajectory), 即一个完整的交互序列
s
0
,
a
0
,
r
1
,
s
1
,
a
1
,
…
,
s
T
s_0, a_0, r_1, s_1, a_1, \ldots, s_T
s0?,a0?,r1?,s1?,a1?,…,sT? 。