莫烦强化学习笔记整理(八)Actor Critic
链接: Actor Critic代码.
1、Actor Critic 要点
总结
Actor Critic 是一种结合了 Policy Gradient (Actor) 和 Function Approximation (Critic) 的方法。
Actor 基于概率选行为, Critic 基于 Actor 的行为评判行为的得分, Actor 根据 Critic 的评分修改选行为的概率。
优势
可以进行单步更新, 比传统的 Policy Gradient 要快。
劣势
难收敛。为了解决收敛问题, Google Deepmind 提出了 Actor Critic 升级版 Deep Deterministic Policy Gradient(DDPG) 后者融合了 DQN 的优势, 解决了收敛难的问题。
2、Actor Critic 算法
Actor
class Actor(object):
def __init__(self, sess, n_features, n_actions, lr=0.001):
# 用 tensorflow 建立 Actor 神经网络,
# 搭建好训练的 Graph.
def learn(self, s, a, td):
# s, a 用于产生 Gradient ascent 的方向,
# td 来自 Critic, 用于告诉 Actor 这方向对不对.
def choose_action(self, s):
# 根据 s 选 行为 a
with tf.variable_scope('exp_v'):
log_prob = tf.log